基于Python中DataFrame中的值求和?

基于Python中DataFrame中的值求和?,python,pandas,dataframe,sum,Python,Pandas,Dataframe,Sum,您好,我有如下数据帧: df = pd.DataFrame({"ID" : ["1", "2", "1", "1"], "code" : ["T", "N", "N", "T"], "amount" :

您好,我有如下数据帧:

df = pd.DataFrame({"ID" : ["1", "2", "1", "1"],
                   "code" : ["T", "N", "N", "T"],
                   "amount" : [100, 200, 300 ,400]})
我需要计算一下

  • sumT=每个“ID”的“金额”之和,其中“代码”=“T”
  • sumN=每个“ID”的“金额”之和,其中“代码”=“N”
  • 所以我需要如下结果:

    df = pd.DataFrame({"ID" : ["1", "2", "1", "1"],
                       "code" : ["T", "N", "N", "T"],
                       "amount" : [100, 200, 300 ,400]})
    
    试试这个:

    new_df.groupby(['ID','code']).agg(sum).unstack()
    new_df.columns = ['Sum T','Sum N']
    new_df = new_df.reset_index()
    

    没有创建多索引还有其他方法吗?这是一种优化的方法。您可以再次重置索引。我更新了我的答案以匹配预期的输出。非常感谢!我给了你最好的答案