使用 python pandas 合并变量相同的行

Combine rows where variables are the same using python pandas

我有一个 pandas 数据框,其中包含这样的行

   Same1  Same2  Diff3  Encoded1  Encoded2  Encoded3
0     33     22    150         0         0         0
1     33     22    300         1         0         1

我想要实现的是通过将其他变量相加来合并 'Same1' 和 'Same2' 变量相同的所有行。

   Same1  Same2  Diff3  Encoded1  Encoded2  Encoded3
0     33     22    450         1         0         1

使用 pandas 实现此目的的最简洁方法是什么?

可执行python代码: https://trinket.io/python3/1da371fd04

你可以试试

out = df.groupby(['Same1', 'Same2']).agg(sum).reset_index()
print(out)

   Same1  Same2  Diff3  Encoded1  Encoded2  Encoded3
0     33     22    450         1         0         1

您可以使用 groupby 来获得预期的结果:

df.groupby(['Same1', 'Same2'], as_index=False).sum()

输出:

    Same1   Same2   Diff3   Encoded1    Encoded2    Encoded3
0   33      22      450     1           0           1