Python 对数据帧中分组的行求和

Python 对数据帧中分组的行求和,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据帧: ID Name L Prob 044FB2AE X L0 1.0 044FB2AE X L1 0.4 044FB2AE X L1 0.3 044FB2AE X L2 0.6 044FB2AE X L2 0.3 044F3333 Y L0 0.1 044F3333 Y L0 0.4

我有一个数据帧:

  ID        Name     L    Prob
  044FB2AE  X        L0   1.0
  044FB2AE  X        L1   0.4
  044FB2AE  X        L1   0.3
  044FB2AE  X        L2   0.6 
  044FB2AE  X        L2   0.3
  044F3333  Y        L0   0.1
  044F3333  Y        L0   0.4
  044F3333  Y        L1   0.3
  044F3333  Y        L2   0.6 
  044F3333  Y        L2   0.4
我想返回一个数据帧,它计算每个级别L中每个名称的概率之和

因此,对于上述情况,结果应该是如下所示的数据帧:

  ID        Name     L    Prob
  044FB2AE  X        L0   1.0
  044FB2AE  X        L1   0.7
  044FB2AE  X        L2   0.9
  044F3333  Y        L0   0.5
  044F3333  Y        L1   0.3
  044F3333  Y        L2   1.0
我知道我需要根据姓名和L对他们进行分组

df.groupby(['Name','L'])
但是,如何计算每个分组中的内容呢?

您似乎需要:


df = df.groupby(['ID','Name','L'], as_index=False, sort=False).Prob.sum()
print (df)
         ID Name   L  Prob
0  044FB2AE    X  L0   1.0
1  044FB2AE    X  L1   0.7
2  044FB2AE    X  L2   0.9
3  044F3333    Y  L0   0.5
4  044F3333    Y  L1   0.3
5  044F3333    Y  L2   1.0
df = df.groupby(['Name','L'], as_index=False, sort=False).Prob.sum()
print (df)
  Name   L  Prob
0    X  L0   1.0
1    X  L1   0.7
2    X  L2   0.9
3    Y  L0   0.5
4    Y  L1   0.3
5    Y  L2   1.0