Python 如何在具有条件的熊猫中添加行
也许有人知道如何通过按特定条件分组来添加数据帧的两行Python 如何在具有条件的熊猫中添加行,python,pandas,dataframe,Python,Pandas,Dataframe,也许有人知道如何通过按特定条件分组来添加数据帧的两行 dfa.groupby(['Col1','Col2'])[['Quantity']].sum() 假设我们有这个df: Col1 Col2 Quantity 0 1 1 10 1 1 1 10 2 2 1 3 3 1 2 3 4 1 2 3 我正努力做到这一点: 求和条件: 一行的Col1元素等于Col1中另一行的元素,并且 该行的Col2元
dfa.groupby(['Col1','Col2'])[['Quantity']].sum()
假设我们有这个df:
Col1 Col2 Quantity
0 1 1 10
1 1 1 10
2 2 1 3
3 1 2 3
4 1 2 3
我正努力做到这一点:
求和条件:
一行的Col1元素等于Col1中另一行的元素,并且
该行的Col2元素等于Col2中另一行的元素
Col1 Col2 Quantity
0 1 1 20
2 2 1 3
3 1 2 6
我想Groupby会成功的。这似乎就是你想要的:
dfa[dfa.Col1 == dfa.Col2].groupby(['Col1','Col2'])[['Quantity']].sum()
你提到的表达方式对我很合适。你得到了什么错误?@Phani:我发布了一个不符合条件的示例,你可以用结果更新它。如果你能添加代码来重现这个数据帧,那也太好了。我在我正在使用的其他示例中发布了groupby如何无法满足条件。因此,你想按Col1、Col2和sum Money进行分组,其中这些代码(C、D、E等)与名称相同?谢谢你的支持。它应该在Col1和Col2相等的地方求和。请忘记列代码(C、D、E等)和列名(Antonia、Jose等)。我现在就纠正我的问题。好的,Groupby会做你想做的事情。它只会在Col1和Col2相等的情况下求和,等等。我想我现在明白你的意思了。我相信用户1827356有你的答案