pandas分别写入excel的不同sheet方法

yipeiwu_com7年前Python基础

pandas可以非常方便的写数据到excel,那么如何写多个dataframe到不同的sheet呢?

使用pandas.ExcelWriter

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源码就知道了

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方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决Tensorflow安装成功,但在导入时报错的问题

在Mac上按照官网教程安装成功tensor flow后,但在程序中导入时,仍然报错,包括但不限于以下两个错误。对于这种错误,原因主要在于Mac内默认的python库比较老了,即便通过pi...

python numpy和list查询其中某个数的个数及定位方法

1. list 查询个数: 调用list.count(obj)函数,返回obj在list中的个数。 输入: list_a = [2 for x in range(5)] print(...

在Python3 numpy中mean和average的区别详解

mean和average都是计算均值的函数,在不指定权重的时候average和mean是一样的。指定权重后,average可以计算一维的加权平均值。 具体如下: import num...

Django项目之Elasticsearch搜索引擎的实例

1.使用Docker安装Elasticsearch及其扩展 获取镜像,可以通过网络pull sudo docker image pull delron/elasticsearch-i...

详解MySQL数据类型int(M)中M的含义

介绍 MySQL 数据类型中的 integer types 有点奇怪。你可能会见到诸如:int(3)、int(4)、int(8) 之类的 int 数据类型。刚接触 MySQL 的时候,我...