用于将DataFrame附加到现有Excel文件的辅助函数:

def append_df_to_excel(filename, df, sheet_name='Sheet1', startrow=None,

truncate_sheet=False,

**to_excel_kwargs):

"""

Append a DataFrame [df] to existing Excel file [filename]

into [sheet_name] Sheet.

If [filename] doesn't exist, then this function will create it.

Parameters:

filename : File path or existing ExcelWriter

(Example: '/path/to/file.xlsx')

df : dataframe to save to workbook

sheet_name : Name of sheet which will contain DataFrame.

(default: 'Sheet1')

startrow : upper left cell row to dump data frame.

Per default (startrow=None) calculate the last row

in the existing DF and write to the next row...

truncate_sheet : truncate (remove and recreate) [sheet_name]

before writing DataFrame to Excel file

to_excel_kwargs : arguments which will be passed to `DataFrame.to_excel()`

[can be dictionary]

Returns: None

"""

from openpyxl import load_workbook

import pandas as pd

# ignore [engine] parameter if it was passed

if 'engine' in to_excel_kwargs:

to_excel_kwargs.pop('engine')

writer = pd.ExcelWriter(filename, engine='openpyxl')

# Python 2.x: define [FileNotFoundError] exception if it doesn't exist

try:

FileNotFoundError

except NameError:

FileNotFoundError = IOError

try:

# try to open an existing workbook

writer.book = load_workbook(filename)

# get the last row in the existing Excel sheet

# if it was not specified explicitly

if startrow is None and sheet_name in writer.book.sheetnames:

startrow = writer.book[sheet_name].max_row

# truncate sheet

if truncate_sheet and sheet_name in writer.book.sheetnames:

# index of [sheet_name] sheet

idx = writer.book.sheetnames.index(sheet_name)

# remove [sheet_name]

writer.book.remove(writer.book.worksheets[idx])

# create an empty sheet [sheet_name] using old index

writer.book.create_sheet(sheet_name, idx)

# copy existing sheets

writer.sheets = {ws.title:ws for ws in writer.book.worksheets}

except FileNotFoundError:

# file does not exist yet, we will create it

pass

if startrow is None:

startrow = 0

# write out the new sheet

df.to_excel(writer, sheet_name, startrow=startrow, **to_excel_kwargs)

# save the workbook

writer.save()

旧答案:它允许您将多个DataFrame写入新的Excel文件.

您可以将openpyxl引擎与startrow参数结合使用:

In [48]: writer = pd.ExcelWriter('c:/temp/test.xlsx', engine='openpyxl')

In [49]: df.to_excel(writer, index=False)

In [50]: df.to_excel(writer, startrow=len(df)+2, index=False)

In [51]: writer.save()

C:/temp/test.xlsx:

如果你不想复制列名,你可能还想指定header = None …

python excel数据框_使用python pandas使用新数据框附加现有excel表相关推荐

  1. Python数据分析小技巧:如何在Pandas中实现数据透视表?

    Python数据分析小技巧:如何在Pandas中实现数据透视表? 数据透视表是数据分析中非常有用的工具,可以帮助我们快速了解数据的结构.关联和趋势.在Pandas中,我们可以使用pivot_table ...

  2. python中成绩分析函数_自学Python笔记:用Python做成绩分析(1)

    有朋友会问,刚学了一周,什么是面向对象都还不清楚就可以写程序?还有Python不是写"爬虫"吗? Python是面向对象的语言,函数.模块.数字.字符串都是对象,并且完全支持继承. ...

  3. 数据科学家数据分析师_站出来! 分析人员,数据科学家和其他所有人的领导和沟通技巧...

    数据科学家数据分析师 这一切如何发生? (How did this All Happen?) As I reflect on my life over the past few years, even ...

  4. python处理表格数据教程_用Python的pandas框架操作Excel文件中的数据教程

    引言 本文的目的,是向您展示如何使用pandas来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其他地方找到的复杂功能同等重要.作为额外的福利,我将会进行一些 ...

  5. python利用pandas合并excel表格代码_利用Python pandas对Excel进行合并的方法示例

    前言 在网上找了很多Python处理Excel的方法和代码,都不是很尽人意,所以自己综合网上各位大佬的方法,自己进行了优化,具体的代码如下. 博主也是新手一枚,代码肯定有很多需要优化的地方,欢迎各位大 ...

  6. pandas整表写入excel指定位置_当Python遇到Excel,一个能打的都没有~

    几乎人人都在用Excel,这种极易上手的数据分析工具无处不在,一旦你掌握了窍门,它就变得非常强大.而Python通常被认为更具有挑战性,但能做的事也更多. 当Python遇到Excel会发生什么?本文 ...

  7. python对excel数据统计_用 python实现简单EXCEL数据统计

    原博文 2016-11-24 23:06 − 任务: 用python时间简单的统计任务-统计男性和女性分别有多少人. 用到的物料:xlrd 它的作用-读取excel表数据 代码: import xlr ...

  8. python读取excel数据并进行数据可视化_用Python处理Excel的数据,并将之可视化

    用Python代码作可视化,如果每次都在代码中以列表的形式来一个一个字符地敲,无异乎浪费时间.我们都知道,在Excel中,数据是以DataFrame(一维的Series是特殊的DataFrame)形式 ...

  9. python制作表格处理_使用python处理excel表格——pandas(1)

    这里写目录标题 一.基本概念 二.内容 1.创建文件 A.创建空表格 B.创建非空表格 2.读取文件 A.读取整个表格 (1)读取有多个sheet的excel (2).title在首行 (3)titl ...

最新文章

  1. idea类模版,创建时生成一句歌词
  2. mysql导出包_mysql导入导出包括函数或者存储过程
  3. 前端学习(2895):课程列表和导航结合
  4. android之APP模块编译
  5. Ubuntu学习日记--Lesson9:显卡工作状态查看命令
  6. 使用keytool 生成证书
  7. 【转】Java程序员最常用的8个Java日志框架
  8. 激光打标机金橙子软件画出五角星最简单方法图解
  9. android studio partially installed,APK安装流程详解2——PackageManager简介
  10. minimax算法_使用Minimax算法玩策略游戏
  11. 2019牛客暑期多校训练营(第八场) Explorer (线段树分治+区间离散化)
  12. Ubuntu系统挂载大于2T新硬盘方法
  13. poi创建excel表打不开——文件格式与扩展名不匹配
  14. android 录屏广播,Android 录屏
  15. GeoServer发布OSM地图
  16. 祝愿大家未来顺利平安
  17. 成都中忻嘉业:抖音怎样查看直播回放
  18. 微信公众号查询账户余额等
  19. HDU - 1495 非常可乐
  20. VsCode tab 不能缩进

热门文章

  1. [PHP] debug_backtrace()可以获取到代码的调用路径追踪
  2. 9月21日科技联播:报告显示网约车案发率低于传统出租车;刘强东性侵案已移交美国检方...
  3. 下一代 Service Mesh -- istio 架构分析
  4. 在MVC框架上定时执行某种操作
  5. 安卓手机上 js不能控制微信浏览器强制刷新页面
  6. [MySql]锁表与解锁
  7. Akka in JAVA(三)
  8. angularJs在线API文档
  9. sql中exists,not exists的用法
  10. 简洁好用的数据库表结构文档生成工具!