Python 通过不为3列工作来进行分组
我试图通过a、b、c列的结果来计算组中d列的和 虽然我在c列中有两个不同的值,但它仍然不是同一组的一部分,结果总和计算不正确 请建议。 我使用的代码是:Python 通过不为3列工作来进行分组,python,pandas,Python,Pandas,我试图通过a、b、c列的结果来计算组中d列的和 虽然我在c列中有两个不同的值,但它仍然不是同一组的一部分,结果总和计算不正确 请建议。 我使用的代码是: 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.dtype
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对象
在将c列的数据类型从object更改为int之后,d浮动64,并且工作正常
现在b仍然是对象,所以只在更改c之后寻找它工作的原因。这肯定需要a。从移动设备添加它需要一定的时间,但我正在这样做。您需要添加数据帧示例,您将得到问题。您的示例可能很小,但它不完整或不可验证。包括一些输入和输出示例,以及预期的输出和您获得的输出。您需要显示原始输入数据、创建df的代码、groupby和期望的结果,以及为什么您的上述代码没有提供您想要的,我们无法从您的描述中猜出为什么它是错误的