我写了一些代码来创建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)
答案 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