我正在尝试按列a,b,c的结果计算组中列d的总和。
虽然我在列c中有2个不同的值,但它仍然不是同一组的一部分,因此得不到正确的总和。
请建议。 我正在使用的代码是:
s = df.groupby(['a','b','c'])['d'].sum()
a b c d
1 ab 123 1
1 ab 123 2
输出应为:
1 ab 123 3
但输出是
1 ab 123 1
123 2
df.dtypes
一个int64
b对象
c对象
d float64
答案 0 :(得分:0)
将列c的数据类型从object更改为int后,它就可以工作。
现在b仍然是对象,因此在仅更改c之后查找其工作原理。