有没有办法更改熊猫数据透视表的页边距“全部”列位置?

时间:2019-07-23 05:34:25

标签: python pandas

我无法找到合适的解决方案,所以决定在这里询问。我只是想更改“所有”列,并将其放在“值”列的开头(在CPU之前)。有办法吗?

可复制的代码:

df = pd.DataFrame({'Rep': ['Wendy Yule','Wendy Yule','Wendy Yule','Wendy Yule','Cedric Moss','Cedric Moss','Cedric Moss','Cedric Moss','John Smith','John Smith','Daniel Hilton','Daniel Hilton','Daniel Hilton','Craig Booker','Craig Booker','Craig Booker','Craig Booker'], 
               'Manager': ['Fred Anderson','Fred Anderson','Fred Anderson','Fred Anderson','Fred Anderson','Fred Anderson','Fred Anderson','Fred Anderson','Debra Henley','Debra Henley','Debra Henley','Debra Henley','Debra Henley','Debra Henley','Debra Henley','Debra Henley','Debra Henley'],
               'Product': ['Monitor','CPU','CPU','Maintenance','Software','Maintenance','CPU','CPU','CPU','Maintenance','Software','CPU','CPU','CPU','Maintenance','Software','CPU'],
               'Price': [5000,65000,100000,7000,10000,5000,30000,65000,35000,5000,10000,40000,65000,35000,5000,10000,30000]})

df = pd.pivot_table(df,index=["Manager","Rep"],values=["Price"],
           columns=["Product"],aggfunc=[np.sum],fill_value=0,margins=True)

df = df.reset_index()
df

1 个答案:

答案 0 :(得分:0)

您可以在创建数据透视表时添加margin_name参数。例如

table = pd.pivot_table(df, values=['A'], index=['B'],
                    columns=['C'], aggfunc=sum, margins=True, margins_name='Grand Total')

利润率列现在将被命名为“总计”,而不是“全部”