我有一个 Pandas 数据框,如下所示,它有多个列,并且想获得列的总数 MyColumn
。
print df
X MyColumn Y Z
0 A 84 13.0 69.0
1 B 76 77.0 127.0
2 C 28 69.0 16.0
3 D 28 28.0 31.0
4 E 19 20.0 85.0
5 F 84 193.0 70.0
_我的尝试_:
我试图使用 groupby
和 .sum()
得到列的总和:
Total = df.groupby['MyColumn'].sum()
print Total
这会导致以下错误:
TypeError: 'instancemethod' object has no attribute '__getitem__'
预期产出
我预计输出如下:
319
或者,我希望 df
使用标题为 TOTAL
的新行进行编辑,其中包含总数:
X MyColumn Y Z
0 A 84 13.0 69.0
1 B 76 77.0 127.0
2 C 28 69.0 16.0
3 D 28 28.0 31.0
4 E 19 20.0 85.0
5 F 84 193.0 70.0
TOTAL 319
原文由 Enigmatic 发布,翻译遵循 CC BY-SA 4.0 许可协议
您应该使用
sum
:然后使用
loc
和Series
,在这种情况下,索引应该设置为与您需要求和的特定列相同:因为如果你传递标量,所有行的值都将被填充:
其他两个解决方案是
at
和ix
请参见以下应用程序:注意: 自 Pandas v0.20 起,
ix
已被弃用。请改用loc
或iloc
。