pandas 对显示的值进行分组和求和
pandas group by and sum with values being displayed
我需要按两列分组并对第三列求和。我的数据如下所示:
site industry spent
Auto Cars 1000
Auto Fashion 200
Auto Housing 100
Auto Housing 300
Magazine Cars 100
Magazine Fashion 200
Magazine Housing 300
Magazine Housing 500
我的代码:
df.groupby(by=['site', 'industry'])['Revenue'].sum()
输出为:
spent
site industry
Auto Cars 1000
Fashion 200
Housing 400
Magazine Cars 100
Fashion 200
Housing 800
当我将其转换为 csv 时,我只得到一列 - 已用完。我想要的输出与原始数据的格式相同,只需要对收入求和,我需要查看列中的所有值。
试试这个,使用 as_index=False
:
df = df.groupby(by=['site', 'industry'], as_index=False).sum()
print(df)
site industry spent
0 Auto Cars 1000
1 Auto Fashion 200
2 Auto Housing 400
3 Magazine Cars 100
4 Magazine Fashion 200
5 Magazine Housing 800
我需要按两列分组并对第三列求和。我的数据如下所示:
site industry spent
Auto Cars 1000
Auto Fashion 200
Auto Housing 100
Auto Housing 300
Magazine Cars 100
Magazine Fashion 200
Magazine Housing 300
Magazine Housing 500
我的代码:
df.groupby(by=['site', 'industry'])['Revenue'].sum()
输出为:
spent
site industry
Auto Cars 1000
Fashion 200
Housing 400
Magazine Cars 100
Fashion 200
Housing 800
当我将其转换为 csv 时,我只得到一列 - 已用完。我想要的输出与原始数据的格式相同,只需要对收入求和,我需要查看列中的所有值。
试试这个,使用 as_index=False
:
df = df.groupby(by=['site', 'industry'], as_index=False).sum()
print(df)
site industry spent
0 Auto Cars 1000
1 Auto Fashion 200
2 Auto Housing 400
3 Magazine Cars 100
4 Magazine Fashion 200
5 Magazine Housing 800