pandas将数据写入EXCEL(.xlsx)文件


将数据写入Excel的.xlsx文件很简单,只需一个条件:

  • 导出文件的路径

假如,我们要将数据写入目录E:\R-practice下的一个excel文件里,我们只需要将完整的路径及文件名传递给to_excel()函数即可。

路径


E:/R-practice/target.xlsx
  • 注意反斜杠/
  • target.xlsx: 目标excel文件,这个文件存不存在都可,没有的话pandas会根据你提供的名称自动创建一个名为target的xlsx文件。

写入数据

先准备好数据,比如下面,我有了一个数据帧e_data,


>>> import pandas as pd

>>> e_data = pd.read_csv('E:/R-practice/mtcars.csv') # 示例数据

我要将它写入E:\R-practice目录下的名为target.xlsx的文件中, 目前该目录下还没有该文件,不用管:

image-20210329045153378

使用to_excel()函数:


>>> e_data.to_excel('E:/R-practice/target.xlsx', sheet_name='Sheet1', index=False)
  • sheet_name='Sheet1' : 指定表名, 我们直接使用EXCEL默认的习惯写Sheet1
  • index=False: 就是不把行号(1 2 3…)写进excel表里去

执行一下,没有报错就是成功了:

image-20210329045439605

查看数据是否成功写入:

可能遇到的情况

上面运行的时候遇到一个报错:

ModuleNotFoundError: No module named ‘openpyxl’

to_excel依赖于openpyxl包,报错显示我的环境里找不到这个包,那就Terminal里安装一下:


pip install openpyxl

然后再运行就可以了。