问题是这样的:
有这样一个表{{2,7},{4,8},{5,9}};我想得到{2,4,5};即子表中的元素所形成的表。
想用Take[list,1]函数依次取出来,map到每一个子表,但是有一个参数。
mathematica中map函数的使用。map[f,list],f如果带有参数怎么办?
答案:1 悬赏:10 手机版
解决时间 2021-02-13 10:57
- 提问者网友:最爱你的唇
- 2021-02-12 20:56
最佳答案
- 五星知识达人网友:街头电车
- 2021-02-12 22:19
恩恩 如果Map[f,list]中f带有参数的话
也许可以用其它输入形式, 如使用纯函数 格式为
f[#]& /@list # 处即为参数位置 这里如:
Take[#, 1] & /@ {{2, 7}, {4, 8}, {5, 9}}
输出为:
{{2}, {4}, {5}}
事实上,如你看到的Take对每个子表作用后保留了我们不需要的括号{}(我们要的是2 而不是{2}),我们只要取Take对每个子表作用后的表(比如{2})的元素就好, 这只要在Take[#, 1] 后面加上[[1]]即可
Take[#, 1][[1]] & /@ {{2, 7}, {4, 8}, {5, 9}}
{2, 4, 5}
也许可以这样解决
a = {{2, 7}, {4, 8}, {5, 9}};
Table[a[[i, 1]], {i, 1, 3}]
{2, 4, 5}
也许可以用其它输入形式, 如使用纯函数 格式为
f[#]& /@list # 处即为参数位置 这里如:
Take[#, 1] & /@ {{2, 7}, {4, 8}, {5, 9}}
输出为:
{{2}, {4}, {5}}
事实上,如你看到的Take对每个子表作用后保留了我们不需要的括号{}(我们要的是2 而不是{2}),我们只要取Take对每个子表作用后的表(比如{2})的元素就好, 这只要在Take[#, 1] 后面加上[[1]]即可
Take[#, 1][[1]] & /@ {{2, 7}, {4, 8}, {5, 9}}
{2, 4, 5}
也许可以这样解决
a = {{2, 7}, {4, 8}, {5, 9}};
Table[a[[i, 1]], {i, 1, 3}]
{2, 4, 5}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯