gpt4 book ai didi

python - 使用匹配的 ID 将值从一个数据框填充到另一个数据框

转载 作者:太空宇宙 更新时间:2023-11-03 15:58:20 24 4
gpt4 key购买 nike

我有两个 pandas 数据框,我想得到 DF1 中每个 ID 的 items_bought 的总和。然后向 DF2 添加一列,其中包含从 DF1 计算出的具有匹配 ID 的 items_bought 的总和,否则用 0 填充它。我怎样才能优雅高效地做到这一点?

DF1

ID | items_bought
1 5
3 8
2 2
3 5
4 6
2 2

DF2

ID
1
2
8
3
2

期望的结果:DF2 成为

ID | items_bought
1 5
2 4
8 0
3 13
2 4

最佳答案

df1.groupby('ID').sum().loc[df2.ID].fillna(0).astype(int)
Out[104]:
items_bought
ID
1 5
2 4
8 0
3 13
2 4
  1. 使用 df1 计算每个 ID 的总和。
  2. 生成的数据帧现在由 ID 索引,因此您可以通过调用 loc 使用 df2 ID 进行选择。
  3. fillna 填空。
  4. NA 由 float 类型处理。现在它们已被删除,将列转换回整数。

关于python - 使用匹配的 ID 将值从一个数据框填充到另一个数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41941605/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com