pandas可以非常方便的写数据到excel,那么如何写多个dataframe到不同的sheet呢?
使用pandas.ExcelWriter
1
2
3
4
5
6
7
8
9
10
11
|
import pandas as pd writer = pd.ExcelFile( 'your_path.xlsx' ) df1 = pd.DataFrame() df2 = pd.DataFrame() df1.to_excel(writer, sheet_name = 'df_1' ) df2.to_excel(writer, sheet_name = 'df_2' ) writer.save() |
网上的大部分答案基本上都是这些内容,但是这里有个大坑,你会发现找不到想要的xlsx文件。
那么问题出在哪?
我们看看ExcelWriter源码就知道了
1
2
3
4
5
6
7
8
9
10
11
12
13
|
class ExcelFile( object ): """ Class for parsing tabular excel sheets into DataFrame objects. Uses xlrd. See read_excel for more documentation Parameters ---------- io : string, path object (pathlib.Path or py._path.local.LocalPath), file-like object or xlrd workbook If a string or path object, expected to be a path to xls or xlsx file engine: string, default None If io is not a buffer or path, this must be set to identify io. Acceptable values are None or xlrd """ |
这里已经说的很清楚了,希望传入的是excel的路径,你只传了个文件名,当然找不到了。
而且从这里我们可以看到,pandas.ExcelWriter实质上是用xlrd来解析excel的。这个wrapper提供了更简单的接口。
以上这篇pandas分别写入excel的不同sheet方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/MTK_zhaosp/article/details/81217394