@@@@@pandas 新增sheet,不覆盖原来已经保存的sheet(亲测管用)

口袋里的小小哥 2020-06-02 14:49:02  2759  收藏 9
分类专栏: python 文章标签: pandas 新增sheet不覆盖原数据 数据分析
版权
#以前的sheet数据很重要,又要新增sheet,很难受,看了一堆帖子没一个回答在点子上,找到了方法,分享给大家

import openpyxl
import pandas as pd
weatherfile = "0317.xlsx"  #路径
writer = pd.ExcelWriter(weatherfile,engine='openpyxl')
pd_data=pd.DataFrame(数据)   # writer = pd.ExcelWriter(weatherfile,engine='openpyxl')
book = openpyxl.load_workbook(writer.path)
writer.book = book
final_results.to_excel(writer, "新sheet名",index=False)
writer.save()

# 没覆盖,新增成功
————————————————
版权声明:本文为CSDN博主「口袋里的小小哥」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41868948/article/details/106495978

@@@@@pandas 将多个DataFrame.to_excel写入不同的Sheet

赶在日落之前 2020-09-23 14:13:26  489  收藏 1
版权
话不多说直接上代码:

path = r"C:\Users\Administrator\Desktop"
if not os.path.exists(path):
    os.mkdir(path)
path1 = path + r'\test.xlsx'
 
book = xlrd.open_workbook(r'C:\Users\Administrator\Desktop\多个sheet的测试数据表.xlsx')
with pd.ExcelWriter(path1) as writer:
    sheet_name = book.sheet_names()
    for i in sheet_name:
        new_data = get_data(i)
        print(new_data)
        new_data.to_excel(writer, sheet_name=i)
    writer.save()
其中get_data是我读测试表返回的dataframe的函数 ,大致就是把每个sheet文件变成dataframe返回出来

def get_data(i):
    table = book.sheet_by_name(u"%s" % (i))
    data_list = []
    for i in range(table.nrows - 1):
        commpany_name = table.col(0)[i + 1].value
        fund_name = table.col(1)[i + 1].value
        amt_rank = table.col(2)[i + 1].value
        data_list.append((commpany_name, fund_name, amt_rank))
    data = pd.DataFrame(data_list, columns=["commpany_name", "fund_name", "manager_name"], dtype=object)
    return new_data
 
————————————————
版权声明:本文为CSDN博主「赶在日落之前」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/lzz781699880/article/details/108751836

@@@@@DataFrame.to_excel多次写入不同Sheet

墙角的秋天 2018-03-20 17:08:26  33602  收藏 38
分类专栏: 数据清洗 文章标签: excel 文档 应用 pandas
版权
主要需要pd.ExcelWriter([文件路径])方法
参考官方文档:

>>> writer = pd.ExcelWriter('output.xlsx')
>>> df1.to_excel(writer,'Sheet1')
>>> df2.to_excel(writer,'Sheet2')
>>> writer.save()
1
2
3
4
以下为实际应用:

"""
df1,df2均为sql查询来的数据
excel_filepath为要生成保存的excel文件地址
"""

write = pd.ExcelWriter(excel_filepath)
df1 = pd.DataFrame(d_f1)
excel_header = ['日期','年龄']#excel的标题
df1.to_excel(write,sheet_name='Sheet1',header=excel_header,index=False)

df2 = pd.DataFrame(d_f2)
excel_header = ['日期','人数']
df2.to_excel(write,sheet_name='Sheet2',header=excel_header,index=False)
write.save()
————————————————
版权声明:本文为CSDN博主「墙角的秋天」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wangxingfan316/article/details/79628463

@@@@@@

pd.ExcelWriter(to_excel)保存结果到已存在的excel文件中

时间:2019-11-30

本文章向大家介绍pd.ExcelWriter(to_excel)保存结果到已存在的excel文件中,主要包括pd.ExcelWriter(to_excel)保存结果到已存在的excel文件中使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

网易云课堂该课程链接地址

https://study.163.com/course/courseMain.htm?share=2&shareId=400000000398149&courseId=1006383008&_trace_c_p_k2_=cd6d8636673a4b03b5f77ca55979c1a7

仅存单个excel表格就用df.to_excel更简单

pd.ExcelWriter保存结果到已存在的excel文件中,并支持多个sheet表格写入excel。

Python对excel更多功能编程需要安装openpyxl第三方包

Python代码如下

# -*- coding: utf-8 -*-
"""
Created on Sat Nov 30 13:24:28 2019@author: 231469242@qq.com
"""
import numpy as np
import pandas as pddf1 = pd.DataFrame({"name": ['Alfred', 'Batman', 'Catwoman'],"toy": [np.nan, 'Batmobile', 'Bullwhip'],"born": [pd.NaT, pd.Timestamp("1940-04-25"),pd.NaT]})df2 = pd.DataFrame({"name": ['Alfred', 'Jim', 'Catwoman'],"toy": [np.nan, 'Batmobile', 'Bullwhip'],"born": ['Greens',pd.Timestamp("1940-04-25"),pd.NaT]})with pd.ExcelWriter('result.xls') as writer:df1.to_excel(writer, sheet_name='sheet1')df2.to_excel(writer, sheet_name='sheet2')#仅存单个excel表格就用to_excel更简单
df1.to_excel("result.xlsx")

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

更新时间:2018年12月10日 11:43:11   作者:unsterbliche

今天小编就为大家分享一篇解决pandas .to_excel不覆盖已有sheet的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

1

2

3

4

5

6

7

8

9

10

11

12

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_ecxel方法将处理结果写入源文件时,会将源文件覆盖,采用openpyxl函数,可以不覆盖原文件内容,在文件内增加sheet输出处理结果。

例子如下:

Python code?

1

2

3

4

5

6

7

8

9

10

11

12

import openpyxl

import pandas as pd

path = r"C:\Users\john\Desktop\test.xlsx"

df = pd.read_excel(path,index_col=None)

Result = df.head()

excel_writer = pd.ExcelWriter(path, engine='openpyxl')

book = openpyxl.load_workbook(excel_writer.path)

excel_writer.book = book

Result.to_excel(excel_writer=excel_writer, sheet_name= 'test', index=None)

excel_writer.close()

@@@@@采用to_excel保存文件不覆盖原有的sheet

m0_37561939 2020-05-01 22:52:42  1740  收藏 8
文章标签: python
版权
在python中用pandas中的to_excel保存文件时,会将原文件的sheet进行覆盖,无法将处理后的结果保存在读取的文件中,采用openpyxl模块可以解决这个问题,方法如下

例子

import openpyxl
import pandas as pd

path = r"C:\Users\john\Desktop\test.xlsx"
df = pd.read_excel(path,index_col=None)
Result = df.head()

excel_writer = pd.ExcelWriter(path, engine='openpyxl')
book = openpyxl.load_workbook(excel_writer.path)
excel_writer.book = book
Result.to_excel(excel_writer=excel_writer, sheet_name= 'test', index=None)
excel_writer.close()
————————————————
版权声明:本文为CSDN博主「m0_37561939」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_37561939/article/details/105884067

@@@@@@@@

import pandas
from openpyxl import load_workbookbook = load_workbook('Masterfile.xlsx')
writer = pandas.ExcelWriter('Masterfile.xlsx', engine='openpyxl')
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)data_filtered.to_excel(writer, "Main", cols=['Diff1', 'Diff2'])writer.save()
import pandas as pd
writer = pd.ExcelWriter('foo.xlsx')
df.to_excel(writer, 'Data 0')
df.to_excel(writer, 'Data 1')
writer.save()

2021-05-23:pandas 新增sheet,不覆盖原来已经保存的sheet相关推荐

  1. leetcode刷题记录2:进度64, 2021.10.23

    文章目录 数组的度(题目编号697:[link](https://leetcode-cn.com/problems/degree-of-an-array/)) 二叉搜索树(题目编号700:[link] ...

  2. 58同城笔试(2021/10/23)

    58同城笔试(2021/10/23) # 第一道 题目大意:输入"AAABBCCCDD",输出A3B2C3D2:输入ABCDEF,输出ABCDEF```java import ja ...

  3. 电动力学每日一题 2021/10/23 载流板产生的电磁场

    电动力学每日一题 2021/10/23 载流板产生的电磁场 载流板的辐射 载流板的辐射 先验证电荷守恒: ∂ρ∂t=−∇⋅J=−∂∂zJz=0\frac{\partial \rho}{\partial ...

  4. 2021.4.23最新mac11.1 big sur 关于CocoaPods安装和使用

    2021.4.23关于CocoaPods安装和使用 第1部分 CocoaPods 的安装 CocoaPods 是iOS开发必不可少的一个第三方框架的管理工具,和Java的Maven类似,maven也是 ...

  5. 2021款凯迪拉克CT5新增尊贵型 售价32.27万元

    5月26日消息,上汽通用汽车凯迪拉克品牌宣布,2021款凯迪拉克CT5新增尊贵型车型,售价32.27万元. CT5尊贵型采用风尚版外观设计,搭载包含MRC主动电磁感应悬挂.mLSD机械式限滑差速器.凯 ...

  6. 市面上主流编辑器介绍(2021/05/20)

    市面上主流编辑器介绍(2021/05/20) 背景 Markdown是一种有用的轻量级标记语言,后续Markdown简写为md. 富文本编辑器(Rich Text Editor,RTE)是一种可内嵌于 ...

  7. Sqlmap 22.05.23.05

    22.05.23.05 1.Sqlmap设置HTTP协议认证 Sqlmap中设置HTTP协议认证的参数 : –auth-type 和 –auth-cred 其中 --auth-type支持 Basic ...

  8. DS SIMULIA CST STUDIO SUITE 2021.05 SP5

    CST Studio Suite 2021.05 - 发行说明 此补丁是推荐更新,其中包括以下更正和改进. 许可 CST Studio Suite Frontend 包括 CST Studio Sui ...

  9. 2021.05.05青蛙过河

    2021.05.05青蛙过河 (题目来源:https://leetcode-cn.com/problems/frog-jump/) 题目描述 一只青蛙想要过河. 假定河流被等分为若干个单元格,并且在每 ...

最新文章

  1. MATLAB获取一个目录中的所有文件
  2. 学 Win32 汇编[12]: PTR、OFFSET、ADDR、THIS
  3. 【Leetcode】组合、排列、子集、切割(回溯模板和去重方法)
  4. Linux学习之系统编程篇:信号量(sem_init / wait / trywait / post / destroy)
  5. 【评论】GNU/Linux下有多少是GNU的?
  6. CCKS2018参会总结项目
  7. 任务计划命令 linux,linux执行一次性任务计划at命令
  8. mysql搜索引擎_常见的 mysql 搜索引擎
  9. 无法取消 Promise
  10. 学生成绩管理系统设计java_java学生成绩管理系统设计与实现
  11. 想你的风还是吹到了长沙
  12. 具象化Magento第一章【1.1】
  13. spring用注解无法灵活注入带参构造函数解决办法
  14. android 天气动画,为app制作炫酷天气动画 – WeatherView
  15. qq2013 beta4(6734)木头显ip v10.4.2
  16. 极致鸿蒙2.0——华为MatePad系列安装AidLux,一个自带vscode的Python编译环境
  17. 计算机启动后有微软标志但不能进入桌面,电脑开机显示桌面背景却无法进入系统的原因及解决办法...
  18. 中日韩Linux厂商合资建公司 寄望登陆纳市(转)
  19. 金蝶云星空对接打通旺店通·企业奇门调拨单查询接口与创建其他出库单接口
  20. JVM 原理与实战【java进阶笔记十三】

热门文章

  1. 苹果手机计算机软件不见了怎么办,苹果手机备忘录的东西突然没有了怎么找回?...
  2. UE4 4.27像素流公网布置教程
  3. 小苹果软件_汪峰女儿小苹果晒原创音乐,完美遗传音乐基因,粉丝:何时出道?...
  4. Py4JJavaError /Library/Frameworks/Python.framework/Versions/3.5/bin/python3: error=2, No such file
  5. 线段树 hdu3265 Posters
  6. 远程唤醒 过一段时间 失效
  7. OpenStack Placement部署(5)
  8. 联想开机启动项按哪个_联想笔记本按哪个键进入u盘启动
  9. dubbo-admin2.5.4监控中心下载
  10. 激光雷达学习笔记(一)数据采集