解决pandas .to_excel不覆盖已有sheet的问题

直接to_excel会被覆盖,借助ExcelWriter可以实现写多个sheet。

from openpyxl import load_workbook
excelWriter = pd.ExcelWriter(os.path.join(output_dir, 'datapoint_statistic.xlsx'),
            engine='openpyxl')
pd.DataFrame().to_excel(os.path.join( output_dir,'datapoint_statistic.xlsx'))
#excel必需已经存在,因此先建立一个空的sheet
_excelAddSheet(DataFrame, excelWriter, sheet_name)

def _excelAddSheet(self,dataframe,excelWriter,sheet_name):
  book = load_workbook(excelWriter.path)
  excelWriter.book = book
  dataframe.to_excel(excel_writer=excelWriter,sheet_name=sheet_name,index=None)
  excelWriter.close()

以上这篇解决pandas .to_excel不覆盖已有sheet的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python实现跨excel的工作表sheet之间的复制方法

    python,将test1的Sheet1通过"跨文件"复制到test2的Sheet2里面. 包括谷歌没有能搜出这种问题答案. 我们贴出代码. 我们加载openpyxl这个包来解决: from openpyxl import load_workbook filename = 'test1.xlsx' filename2 = 'test2.xlsx' def replace_xls(sheetname): wb = load_workbook(filename) wb2 = load_wo

  • padas 生成excel 增加sheet表的实例

    基本介绍 pandas是Python数据挖掘.数据分析中常用的库.而DataFrame生成excel中的sheet表,以及在excel中增加sheet表,在数据分 析中也经常用到.这里以一个简单例子介绍这两个功能的用法,以备不时之需. 例子: #!/usr/bin/env python # -*- coding: utf-8 -*- """ Version: 0.1 Author: Wang Pei License: Copyright(c) 2017 Pei.Wang Su

  • python得到一个excel的全部sheet标签值方法

    这里需要用到python处理excel很经典的库openpyxl,安装也特别简单.window直接pip install就好了 代码在这里~ wb = openpyxl.load_workbook(filepath) sheetnames = wb.sheetnames 以上这篇python得到一个excel的全部sheet标签值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

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

    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_

  • 使用pandas实现csv/excel sheet互相转换的方法

    1. xlsx to csv: import pandas as pd def xlsx_to_csv_pd(): data_xls = pd.read_excel('1.xlsx', index_col=0) data_xls.to_csv('1.csv', encoding='utf-8') if __name__ == '__main__': xlsx_to_csv_pd() 2. csv to xlsx: import pandas as pd def csv_to_xlsx_pd():

  • 解决pandas .to_excel不覆盖已有sheet的问题

    直接to_excel会被覆盖,借助ExcelWriter可以实现写多个sheet. from openpyxl import load_workbook excelWriter = pd.ExcelWriter(os.path.join(output_dir, 'datapoint_statistic.xlsx'), engine='openpyxl') pd.DataFrame().to_excel(os.path.join( output_dir,'datapoint_statistic.x

  • Python 创建新文件时避免覆盖已有的同名文件的解决方法

    思路:创建文件时,先检查是否有同名文件(使用os.path.isfile),如果有,则在文件名后加上编号n来创建. 关键点: 1. 使用os.path.isfile判断文件是否存在 2. 使用递归函数判断 2. 添加编号时, 使用可变list 传值n=[0] 完整代码如下: import os def check_filename_available(filename): n=[0] def check_meta(file_name): file_name_new=file_name if os

  • python解决pandas处理缺失值为空字符串的问题

    踩坑记录: 用pandas来做csv的缺失值处理时候发现奇怪BUG,就是excel打开csv文件,明明有的格子没有任何东西,当然,我就想到用pandas的dropna()或者fillna()来处理缺失值. 但是pandas读取csv文件后发现那个空的地方isnull()竟然是false,就是说那个地方有东西... 后来经过排查发现看似什么都没有的地方有空字符串,故pandas认为那儿不是缺失值,所以就不能用dropna()或者fillna()来处理. 解决思路:先用正则将空格匹配出来,然后全部替

  • 解决Pandas to_json()中文乱码,转化为json数组的问题

    问题出现与解决 Pandas进行数据处理之后,假如想将其转化为json,会出现一个bug,就是中文文字是以乱码存储的,也就是\uXXXXXX的形式,翻了翻官网文档,查了源码的参数,(多谢网友提醒)需要设置js001 = df1.to_json(force_ascii=False),即可显示中文编码 以下是原文的额外内容,DataFrame 转化为json数组 于是决定自己写一个.首先用demojson的类库尝试了一下,不行,依旧编码问题.之后考虑python 原生的 json 应该有编码转换功能

  • 解决ie11 SCRIPT5011:不能执行已释放Script的代码问题

    依照我遇到的问题为例: (我的页面结构为:父页面中嵌套有iframe子页面) 1.造成这种情况的原因是:父页面初始化声明变量a为数组(数组对象是引用类型,赋值传递的是地址),创建iframe子页面后给父页面变量a赋值,赋值后销毁iframe子页面,再次调用变量a的时候就会抛出异常'SCRIPT5011:不能执行已释放Script的代码'. //父页面中 var a = []; //iframe子页面中 $.each(arr,function (i,v) { parent.a.push(v); }

  • 解决pandas无法在pycharm中使用plot()方法显示图像的问题

    最近用了pycharm,感觉还不错,就是pandas中Series.DataFrame的plot()方法不显示图片就给我结束了,但是我在ipython里就能画图 以前的代码是这样的 import matplotlib.pyplot as plt from pandas import DataFrame,Series Series([4,5,7]).plot() 找了半天 发现只要加个 plt.show() 就可以显示图像了了 import matplotlib.pyplot as plt fro

  • 解决pandas read_csv 读取中文列标题文件报错的问题

    从windows操作系统本地读取csv文件报错 data = pd.read_csv(path) Traceback (most recent call last): File "C:/Users/arron/PycharmProjects/ML/ML/test.py", line 45, in <module> data = pd.read_csv(path) File "C:\Users\arron\AppData\Local\Continuum\Anacon

  • 解决pandas使用read_csv()读取文件遇到的问题

    如下: 数据文件: 上海机场 (sh600009) 24.11 3.58 东风汽车 (sh600006) 74.25 1.74 中国国贸 (sh600007) 26.38 2.66 包钢股份 (sh600010) 61.01 2.35 武钢股份 (sh600005) 75.85 1.3 浦发银行 (sh600000) 6.65 0.96 在使用read_csv() API读取CSV文件时求取某一列数据比较大小时, df=pd.read_csv(output_file,encoding='gb23

  • 解决pandas.DataFrame.fillna 填充Nan失败的问题

    如果单独是 >>> df.fillna(0) >>> print(df) # 可以看到未发生改变 >>> print(df.fillna(0)) # 如果直接打印是可以看到填充进去了 >>> print(df) # 但是再次打印就会发现没有了,还是Nan 将其Nan全部填充为0,这时再打印的话会发现根本未填充,这是因为没有加上参数inplace参数. 一定要将inplace = True加入参数,这样才能让源数据发生改变并保存. &g

随机推荐