如何在Python中基于groupby添加一列的值?

时间:2019-11-14 03:53:21

标签: python dataframe

假设我具有以下数据框:

year count 2001 14 2004 16 2001 2 2005 21 2001 22 2004 14 2001 8

我想按year列分组并为每个给定年份添加count列。我希望我的结果是

year count 2001 46 2004 30 2005 21

我正在努力寻找一种解决方法,有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

import pandas as pd

df = pd.read_csv("test.csv")
df['count'] = pd.to_numeric(df['count'])
#df['count'] = df.groupby(['year'])['count'].sum()

total = df.groupby(['year'])['count'].sum()

print(total)

收益:

year
2001    46
2004    30
2005    21

答案 1 :(得分:1)

希望这会有所帮助! 假设您的熊猫数据框名称为 df 。然后groupby代码如下运行:

df.groupby('year')[['count']].sum()

它将返回您想要的数据帧。