Excel工作表中的多个Pandas数据透视表

时间:2018-10-24 16:03:21

标签: python excel pandas printing pivot-table

我写了一些代码来创建3个不同的数据透视表。当我想在Python控制台中打印它们时,它们可以完美工作。 但是,当我想在我的Excel工作表中显示时,代码仅显示最后一个数据透视表(表3)。 我没有在文档“ to excel”或“ Pivot Table”中找到任何有关在excel中同时打印3个枢轴表而不删除其余部分的信息。

xl = pd.ExcelFile(NewTransition_file)
df = xl.parse('DB - Jan - Dec',column=['A:AH'])
pd.read_excel(data)

Table1 = df.loc[df['Repricing Method'] == "Table1"]
Table1 = Table1.pivot_table(index=['Client Company Name'],values=['Original Total Charge','Provider Discount', 'Client Fees','Network Fee'])
Table1.to_excel(data, sheet_name='Table1',startcol=0, startrow=1)


Table2 = df.loc[df['Repricing Method'] == "Table2"]
Table2= Table2.pivot_table(index=['Client Company Name'],values=['Original Total Charge','Provider Discount', 'Client Fees','Network Fee'])
Table2.to_excel(data, sheet_name='Table2', startcol=6, startrow=1)

Table3 = df.loc[df['Repricing Method'].isin(OtherMethod)]
Table3 = other.pivot_table(index=['Client Company Name'], values=['Original Total Charge','Provider Discount', 'Client Fees','Network Fee'])
Table3.to_excel(data, sheet_name='Table3', startcol=11, startrow=1)

2 个答案:

答案 0 :(得分:0)

表3覆盖了我猜想的其他表。改用ExcelWriter来自熊猫。

答案 1 :(得分:0)

在下面使用,模式是 'a' append 和 startrow = 您希望数据透视表在同一张表中开始的位置

with pd.ExcelWriter('some_excel.xlsx', mode='a') as writer:
    pivot_1_df.to_excel(writer,startrow= 0 ,sheet_name='Pivots')
    pivot_2_df.to_excel(writer,startrow= 8 ,sheet_name='Pivots') # starts from 8th  row

确保 pandas 是最新的或使用更新

pip install pandas --upgrade