【发布时间】:2019-04-01 19:35:50
【问题描述】:
我有一个df
ID Count_ Sum AA BB dist
0 3 0.0 50.0 300.0 0.0 100.000000
1 7 0.0 40.0 700.0 0.0 141.421356
2 4983 0.0 0.0 500.0 200.0 0.000000
3 4982 0.0 0.0 400.0 200.0 0.000000
4 4984 0.0 30.0 600.0 200.0 100.000000
5 4981 0.0 0.0 300.0 200.0 0.000000
6 4985 0.0 40.0 700.0 200.0 141.421356
还有两个列表
List1 = [3,4983,4984]
List2 = [7,4981,4985]
这两个列表都是由其他代码生成的。假设在这种情况下List1 由id=5 生成,List2 由id=18 生成。
我想像这样创建一个新的df
id sum_dist
0 5 200.0
1 18 282.84
如果新列 sum_dist 是通过对列 dist 中的所有值求和创建的,则按 List1 或 List2 过滤。例如 - 对于id=5,我们查看List1 并过滤df 中在ID 列和dist 列中具有此值的所有行。
我在编写通用解决方案时遇到问题,因此我可以处理更大的 df。有什么建议吗?
【问题讨论】:
标签: python pandas indexing filter