gpt4 book ai didi

python - Pandas 数据透视表行小计

转载 作者:IT老高 更新时间:2023-10-28 21:44:26 25 4
gpt4 key购买 nike

我正在使用 Pandas 0.10.1

考虑到这个数据框:

Date       State   City    SalesToday  SalesMTD  SalesYTD
20130320 stA ctA 20 400 1000
20130320 stA ctB 30 500 1100
20130320 stB ctC 10 500 900
20130320 stB ctD 40 200 1300
20130320 stC ctF 30 300 800

如何按州对小计进行分组?

State   City  SalesToday  SalesMTD  SalesYTD
stA ALL 50 900 2100
stA ctA 20 400 1000
stA ctB 30 500 1100

我尝试使用数据透视表,但我只能在列中使用小计

table = pivot_table(df, values=['SalesToday', 'SalesMTD','SalesYTD'],\
rows=['State','City'], aggfunc=np.sum, margins=True)

我可以通过数据透视表在 excel 上实现这一点。

最佳答案

如果您没有将州和城市都放在行中,您将获得单独的边距。 reshape 并获得您想要的表格:

In [10]: table = pivot_table(df, values=['SalesToday', 'SalesMTD','SalesYTD'],\
rows=['State'], cols=['City'], aggfunc=np.sum, margins=True)


In [11]: table.stack('City')
Out[11]:
SalesMTD SalesToday SalesYTD
State City
stA All 900 50 2100
ctA 400 20 1000
ctB 500 30 1100
stB All 700 50 2200
ctC 500 10 900
ctD 200 40 1300
stC All 300 30 800
ctF 300 30 800
All All 1900 130 5100
ctA 400 20 1000
ctB 500 30 1100
ctC 500 10 900
ctD 200 40 1300
ctF 300 30 800

我承认这并不完全明显。

关于python - Pandas 数据透视表行小计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15570099/

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