【发布时间】:2015-12-21 11:01:16
【问题描述】:
在 Pandas 数据框上执行 groupby 的最佳方法是什么,但从该 groupby 中排除某些列?例如我有以下数据框:
Code Country Item_Code Item Ele_Code Unit Y1961 Y1962 Y1963
2 Afghanistan 15 Wheat 5312 Ha 10 20 30
2 Afghanistan 25 Maize 5312 Ha 10 20 30
4 Angola 15 Wheat 7312 Ha 30 40 50
4 Angola 25 Maize 7312 Ha 30 40 50
我想按 Country 和 Item_Code 列分组,只计算 Y1961、Y1962 和 Y1963 列下的行的总和。生成的数据框应如下所示:
Code Country Item_Code Item Ele_Code Unit Y1961 Y1962 Y1963
2 Afghanistan 15 C3 5312 Ha 20 40 60
4 Angola 25 C4 7312 Ha 60 80 100
现在我正在这样做:
df.groupby('Country').sum()
但是,这也会将 Item_Code 列中的值相加。有什么方法可以指定 sum() 操作中包含哪些列以及排除哪些列?
【问题讨论】:
标签: python pandas group-by aggregate