我试图将多个pandasdataframes
从一个更大的数据集中提取到excel工作簿的多个工作表中。问题是它只写第一个数据帧,即index[0]
,因此生成的工作簿只有一个工作表,请参见下面的sheet1
。我错过了什么?这是我问题的再创造。在
代码:
import pandas as pd
from pandas import ExcelWriter
df_list = []
a = pd.DataFrame({'A':[1,2,3,4,5,6,7,8,9], 'B':[10,11,12,13,14,15,16,17,18]})
b = pd.DataFrame({'C':[11,22,33,44,55,66,77,88,99], 'D':[105,117,128,139,140,153,166,176,188]})
df_list.append(a)
df_list.append(b)
writer = ExcelWriter('test_output.xlsx')
for n, df in enumerate(df_list):
df.to_excel(writer, 'sheet%s' % str(n + 1))
writer.save()
表1:
^{pr2}$
您需要在
for
构造之后调用writer.save()
。在一旦调用此方法,
writer
对象将被有效地关闭,您将无法使用它来写入更多数据。在相关问题 更多 >
编程相关推荐