【发布时间】:2020-11-04 19:41:07
【问题描述】:
我有一个 pandas dict,d1,其中每个值是一个两列(ID 和权重)、100 行数据框。
我想遍历字典,对于每个数据帧,我想对第 n 行中的所有“权重”值求和,其中 n 是代表该行的 1 到 100 之间的值。然后我想将输出写入另一个字典 d2,其中键为 1-100,值是值的总和。
示例 d1 值数据框:
ID Weight
1 0.021
2 0.445
3 1.018
..
..
..
99 77.31
100 234.04
基本上,假设我有 10000 个这样的数据帧,我想将 ID 1 的所有权重值加到 10000 中,然后将 ID 2 的所有权重值加到 10000 中,依此类推,直到 ID 100。
我有一个解决方案,基本上是一个嵌套循环。它起作用了,它会起作用的。但是,我真的很想扩展我的基本 pandas / numpy 知识,我想知道是否有更 Python 的方式来做到这一点?
我现有的代码:
for i in range (1,101):
tot = 0
for key, value in d1.items():
tot = tot + value.at[i,'Weight']
d2[i] = tot
非常感谢任何帮助和建议!
【问题讨论】:
标签: python pandas numpy dictionary