找回密码
 注册
Simdroid-非首页
查看: 107|回复: 1

[数值计算] 请问这样一组数怎样提取

[复制链接]
发表于 2013-10-21 10:07:24 | 显示全部楼层 |阅读模式 来自 上海
比如我有一组数
a = {{2, 1.1}, {100, 2.5}, {5, 4.6}, {78, 7.1}, {200, 5.9}};
我要提取b = {5, 78, 2};对应的值 c = {4.6, 7.1, 1.1};
如何通过a和b得到c,有什么好的快的算法,因为我实际计算的数组a和b的规模都比较大
发表于 2013-10-21 17:28:00 | 显示全部楼层 来自 北京西城
Simdroid开发平台
  1. a = {{2, 1.1}, {100, 2.5}, {5, 4.6}, {78, 7.1}, {200, 5.9}};
  2. b = {5,  78, 2};

  3. Pick[a, a[[;; , 1]], Alternatives @@ b]
  4. Pick[a, a[[;; , 1]] /. Dispatch@Thread[b -> True]]
复制代码
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-25 19:03 , Processed in 0.025694 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表