小编典典

在 2 个不同的 excel 表中写入 2 个数据框

all

我正在尝试这样的事情:

output_2df = pd.concat([installs, second_installs], ignore_index=True)
output_2df.to_excel('./installs.xlsx',sheet_name='Answers')

output_qdf = pd.concat([a_questionnaires, b_questionnaires], ignore_index=True)
output_qdf.to_excel('./installs.xlsx',sheet_name='questionnaires')

虽然它没有错误,但当我打开我的 Excel 文件时,我只看到第二张表。第一个数据帧中的数据似乎被覆盖了。

然后我尝试了这个:

writer = pd.ExcelWriter('./installs.xlsx', engine='openpyxl')

# Append final dfs to one output_df

output_2df = pd.concat([installs, second_installs], ignore_index=True)
output_2df.to_excel(writer, sheet_name='Answers')


output_qdf = pd.concat([a_questionnaires, b_questionnaires], ignore_index=True)
output_qdf.to_excel(writer, sheet_name='Questionnaires')

但是,在这种情况下,当我手动打开我的 Excel 文件时,我收到一个错误,因为文件类型无效,所以无法打开它。

将两个不同的数据框写入同一个 Excel 文件中的 2 个单独工作表的正确方法是什么?


阅读 66

收藏
2022-07-01

共1个答案

小编典典

您可以pd.ExcelWriter为此使用:

# Create a Pandas Excel writer using XlsxWriter as the engine.
writer = pd.ExcelWriter('file_name.xlsx', engine='xlsxwriter')
# Write each dataframe to a different worksheet.
clean_year_examens.to_excel(writer, sheet_name='Examens jaar')
df1.to_excel(writer, sheet_name='sheet_name1')
df2.to_excel(writer, sheet_name='sheet_name2')
# Close the Pandas Excel writer and output the Excel file.
writer.save()
2022-07-01