【问题标题】:Sum together certain values in a row [duplicate]将某些值连续汇总[重复]
【发布时间】:2019-01-02 07:26:05
【问题描述】:

我在 python 中工作,并且有一个数据框(df),其中包含“COUNTERPARTYNAME”列。此列中有不同的交易对手,例如“A”、“B”、“C”等……还有另一列称为 MTM,由数字组成。

COUNTERPARTYNAME                   NPV          
0     A                            90                

1     B                            85                    

2     A                            130                     

3     C                            90    

4     B                            105

5     A                            75
...

...

基本上,我希望在我的数据框中添加一列,该列将包含该行中相应 COUNTERPARTYNAME 的所有 NPV 的总和。

我的预期结果是这样的:

    COUNTERPARTYNAME               NPV                 SUM(NPV)      
0     A                            90                  295

1     B                            85                  190  

2     A                            130                 295 

3     C                            90                  90

4     B                            105                 190

5     A                            75                  295
...

谢谢!

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    使用GroupBy.transform:

    df['SUM(NPV)'] = df.groupby('COUNTERPARTYNAME')['NPV'].transform('sum')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-23
      • 1970-01-01
      • 2020-01-27
      • 2019-06-10
      相关资源
      最近更新 更多