使用 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
我有一个 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