The docs http://pandas.pydata.org/pandas-docs/stable/io.html#writing-excel-files-to-disk建议您执行以下操作:
with pd.ExcelWriter('path_to_file.xlsx') as writer:
for (sheet_name, df) in sheets.items():
df.to_excel(writer, sheet_name=sheet_name)
错误发生如下from_dict
在 DataFrames 的字典上创建一个奇怪的 DataFrame,其中每个元素都是一个 DataFrame:
In [11]: sheets = {"a": pd.DataFrame([[1]], columns=["A"]), "b": pd.DataFrame([[2], [3]], columns=["B"])}
In [12]: pd.DataFrame.from_dict(sheets, orient='index')
Out[12]:
0
b B
0 2
1 3
a A
0 1
In [13]: pd.DataFrame.from_dict(sheets, orient='index').applymap(type)
Out[13]:
0
b <class 'pandas.core.frame.DataFrame'>
a <class 'pandas.core.frame.DataFrame'>
这不会映射到 Excel 工作表,因为它需要单个值(例如 int/float/string)作为元素。
如果您想将字典中的数据合并/连接/连接到单个文件中,请查看合并文档部分 http://pandas.pydata.org/pandas-docs/stable/merging.html(从 pandas DataFrames 而不是电子表格的角度来思考这一点)。