gpt4 book ai didi

python - Pandas - 对具有相同名称开头的列求和

转载 作者:行者123 更新时间:2023-12-05 02:21:05 24 4
gpt4 key购买 nike

我想对名称开头相同的列求和。

示例:

import pandas as pd
import numpy as np

df=pd.DataFrame({'product':['TV','COMPUTER','SMARTPHONE'],
'price_2012':np.random.randint(100,300,3),
'price_2013':np.random.randint(100,300,3),
'price_2014':np.random.randint(100,300,3),
'price_2015':np.random.randint(100,300,3),
'price_2016':np.random.randint(100,300,3)})

对于这个例子,我想创建一个新列 price_2012_2016,等于 2013 年到 2016 年的价格总和,而不列出所有列。

PS:在 SAS 中我是这样的:price_2012_2016=sum(of prix_2012-prix-2016);

亲切的,洛朗 A.

最佳答案

您可以简单地执行以下操作:

df['price_2012_2016'] = df[[col for col in df.columns if col.startswith('price_')]].sum(axis=1)

这仅对 df DataFrame 中以“price_”开头的列求和,并将结果保存为 price_2012_2016 列。 axis=1 参数用于在列轴而不是行上计算总和,见下文:

enter image description here

关于python - Pandas - 对具有相同名称开头的列求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36333491/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com