无法对符合给定条件的列中的值求和

Having trouble to sum values in a column that match a given condition

我正在尝试根据另一列的值对一列的数值求和。例如:每当第一列中有一个 Glovoapp 我想将其对应的数值(另一列)加在一起。

Table 示例:

发起人 价格
Glovo 应用程序 566
XXXXX 545
Glovo 应用程序 899
XXXXX 200
montant_init = new_data.loc[new_data['Initiateur'] == 'Glovoapp', 'Price'].sum()

output: 0 (none)
expected output (example): 1465

使用:

montant_init = df[df["Initiator"]=="Glovoapp"]["Price"].sum()

如果您有多个启动器,您也可以使用 groupby:

price_sum = df.groupby("Initiator")["Price"].sum()

输出:

Initiator
Glovoapp    1465
XXXXX        745

然后

price_sum["Glovoapp"]

输出:

1465

我会这样写:

montant_init = (
    new_data
    [new_data['Initiateur'] == 'Glovoapp']
    ['Montant (centimes)']
    .sum()
)