Python 通过不同方式聚合列,在Pandas中使用groupby

Python 通过不同方式聚合列,在Pandas中使用groupby,python,pandas,Python,Pandas,我有以下数据帧: df = pd.DataFrame([["John", 1234 , 10], ["John",1234, 5] , ["Sally" , 1235 , 20] , ["Sally" , 1235, 5]], columns = ["Name", "ID", "Amount"]) 我想按名称将此数据帧分组。我可以做到: group = df.gro

我有以下数据帧:

 df = pd.DataFrame([["John", 1234 , 10], 
                    ["John",1234, 5] , 
                    ["Sally" , 1235 , 20] , 
                    ["Sally" , 1235, 5]], 
columns = ["Name", "ID", "Amount"])
我想按名称将此数据帧分组。我可以做到:

group = df.groupby('Name').agg('sum')
这将给我:

         ID  Amount
Name               
John   2468      15
Sally  2470      25
但是,我想通过'count'对列ID进行聚合,并通过'sum'对列Amount进行聚合。这看起来像:

         ID  Amount
Name               
John     2      15
Sally    2      25
我该怎么做

>>> df.groupby('Name').agg({'ID': 'count', 'Amount': 'sum'})
       Amount  ID
Name             
John       15   2
Sally      25   2