mathematica如何取出向量中的区间元素

例如:s1={2,5,6,10,19,40,100},现在删除大于35和小于3的数就得到s2={5,6,10},用什么命令?菜鸟谢谢各位老师解答!!... 例如:s1={2,5,6,10,19,40,100},现在删除大于35和小于3的数就得到s2={5,6,10},用什么命令?菜鸟谢谢各位老师解答!! 展开
 我来答
xzcyr
2013-03-18 · TA获得超过3399个赞
知道大有可为答主
回答量:1400
采纳率:100%
帮助的人:669万
展开全部
用Select就行了啊:
s1 = {2, 5, 6, 10, 19, 40, 100};
Select[s1, 3 <= # <= 35 &]
更多追问追答
追问
初学者第一次发贴,这么快就有回复,谢谢xzcyr,命令很正确,但当将这个命令代换到另一个命令却出错,请各位老师指教!!
例如:
x1 = {1, 2};
x2 = {3, 4};
Union[Flatten[
s1 = Table[x1[[i]]*x2[[j]], {i, Length[x1]}, {j, Length[x2]}]]];
Select[s1, 5 < # < 7 &]
输出却出现{},应该是6啊,哪里错了?
追答
……Union是多余的,还有你s1应该写到外面去,对s1进行Flatten不会改变s1本身,而是会生成一个新的输出,s1则还是没被压平,不信你单独执行一下s1试下。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式