Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在Excel表中写入多个数据帧

如何在Excel表中写入多个数据帧
EN

Data Science用户
提问于 2019-02-28 21:23:54
回答 4查看 66.5K关注 0票数 12

我有多个具有相同列名的数据帧。我想把它们写在一起,把它们放在一个竖直地堆叠在一起的excel工作表上。在每一个之间,都会有一个占据一排的文本。我就是这么想的。

我尝试了pandas.ExcelWriter()方法,但是每个dataframe都覆盖了工作表中的前一个框架,而不是附加。

请注意,对于不同的数据,我仍然需要多个工作表,但每个工作表上也需要多个数据文件。有可能吗?或者其他可以从熊猫数据中动态生成excel表的python库?

EN

回答 4

Data Science用户

回答已采纳

发布于 2019-03-01 00:56:23

写在同一张纸上的示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd

data1 = """
class    precision   recall 
<18      0.0125         12           
18-24    0.0250         16 
25-34    0.00350         4
"""
data2 = """
class    precision   recall 
<18      0               0           
18-24    0.25            6 
25-34    0.35            5
"""

#create 2 df for sample
df1 = pd.read_csv(pd.compat.StringIO(data1), sep='\s+')
df1.name = "Dataframe1"
df2 = pd.read_csv(pd.compat.StringIO(data2), sep='\s+')
df2.name = "Dataframe2"
print(df1);print(df2)

writer = pd.ExcelWriter('e:\\test.xlsx',engine='xlsxwriter')
workbook=writer.book
worksheet=workbook.add_worksheet('Result')
writer.sheets['Result'] = worksheet
worksheet.write_string(0, 0, df1.name)

df1.to_excel(writer,sheet_name='Result',startrow=1 , startcol=0)
worksheet.write_string(df1.shape[0] + 4, 0, df2.name)
df2.to_excel(writer,sheet_name='Result',startrow=df1.shape[0] + 5, startcol=0)
writer.save()

产出:

如果您想用不同的纸张书写:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd

# Create a Pandas Excel writer using XlsxWriter as the engine.
writer = pd.ExcelWriter('e:\\test.xlsx', engine='xlsxwriter')

# Write each dataframe to a different worksheet. you could write different string like above if you want
df1.to_excel(writer, sheet_name='Sheet1')
df2.to_excel(writer, sheet_name='Sheet2')

# Close the Pandas Excel writer and output the Excel file.
writer.save()
票数 16
EN

Data Science用户

发布于 2019-03-01 00:44:48

这里这里到相同工作表的几个数据格式和选定的工作表:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
writer = pd.ExcelWriter('pandas_multiple.xlsx', engine='xlsxwriter')

# Position the dataframes in the worksheet.
df1.to_excel(writer, sheet_name='Sheet1')  # Default position, cell A1.
df2.to_excel(writer, sheet_name='Sheet1', startcol=3)
df3.to_excel(writer, sheet_name='Sheet1', startrow=6)

writer.save()
票数 5
EN

Data Science用户

发布于 2020-07-08 01:48:58

下面是一个通用函数,用于将任意数量的Pandas数据写入单个Excel表:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd

def write_dataframes_to_excel_sheet(dataframes, dir, name):
    with pd.ExcelWriter(f'{dir}/{name}.xlsx', engine='xlsxwriter') as writer:
        workbook = writer.book
        worksheet = workbook.add_worksheet('Result')
        writer.sheets['Result'] = worksheet

        COLUMN = 0
        row = 0

        for df in dataframes:
            worksheet.write_string(row, COLUMN, df.name)
            row += 1
            df.to_excel(writer, sheet_name='Result',
                        startrow=row, startcol=COLUMN)
            row += df.shape[0] + 2

下面是一个使用示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Create sample dataframes
df1 = pd.DataFrame([(1, 2, 3), (4, 5, 6)], columns=('A', 'B', 'C'))
df1.name = "Dataframe1"
df2 = pd.DataFrame([(7, 8, 9), (10, 11, 12)], columns=('A', 'B', 'C'))
df2.name = "Dataframe2"
dataframes = (df1, df2)

write_dataframes_to_excel_sheet(dataframes, '/Users/foo/Documents', 'bar')
票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/46437

复制
相关文章
关于Excel表操作-写入数据库操作
Excel表要写入数据库,毕竟通过pandas来操作复杂的数据还是很有难度的,有多少种数据库,就有多少种数据库引擎,要下载多少python数据库包,同样对Excel写入数据库的操作,可以基于excel按行写入,也可以通过pandas处理,但pandas处理效率不高。
python与大数据分析
2022/05/19
1.3K0
关于Excel表操作-写入数据库操作
Excel小技巧54: 同时在多个工作表中输入数据
很多情形下,我们都需要在多个工作表中有同样的数据。此时,可以使用Excel的“组”功能,当在一个工作表中输入数据时,这些数据也被同时输入到其它成组的工作表中。
fanjy
2020/09/10
3.3K0
Excel小技巧54: 同时在多个工作表中输入数据
Python+pandas把多个DataFrame对象写入Excel文件中同一个工作表
在使用Python+pandas进行数据分析和处理时,把若干结构相同的DataFrame对象中的数据按顺序先后写入同一个Excel文件中的同一个工作表中,纵向追加。
Python小屋屋主
2021/07/19
5.8K0
Python-Excel-openpyxl-09-向Excel中写入数据
系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3.2 openpyxl:2.6.2
zishendianxia
2019/10/23
1.6K0
011 Ruby 多Word表写入Excel
这期,为你讲解如何将多个Word表格汇总到Excel里。为了方便演示,我只模拟了3个Word数据文件。
职场编码
2020/06/23
7100
011 Ruby 多Word表写入Excel
快速汇总多个工作簿/工作表中的数据(Excel工具推荐)
很多数据散落在很多工作表或者工作簿中,由于某项工作我们需要将这些数据做个汇总。比方,我们有以下三个工作簿
wujunmin
2021/09/07
10.9K1
快速汇总多个工作簿/工作表中的数据(Excel工具推荐)
Python爬虫爬数据写入到EXCEL中
Python抓数据写到EXCEL中。以前都是写到txt中然后再导入到excel。现在直接写到excel中。
py3study
2020/01/07
1.4K0
如何在前端应用中合并多个 Excel 工作簿
SpreadJS是纯前端的电子表格控件,可以轻松加载 Excel 工作簿中的数据并将它们呈现在前端浏览器应用的网页上。
葡萄城控件
2023/10/11
2840
如何在前端应用中合并多个 Excel 工作簿
[网友投稿] Excel数据批量写入Word
前言:这是 VBA说 微信公众号借助我的这个平台给大家分享的一篇关于Excel与Word交互的文章,希望对大家有帮助。在这里,欢迎大家投稿,与更多的人分享有用的知识。
fanjy
2019/10/09
3.5K0
[网友投稿] Excel数据批量写入Word
把 excel 表中的数据 批量修改到指定数据库表中、根据 excel 表中数据修改数据库表中数据
1. 收到一张 excel 表,要求根据 “转账时间”一列的值批量修改数据库表中 "放款时间"一列的值。
微风-- 轻许--
2019/07/02
4.7K0
把 excel 表中的数据 批量修改到指定数据库表中、根据 excel 表中数据修改数据库表中数据
Python读取结果写入Excel中
列表嵌套字典。Excel中的url,test_method,data,title等都是一个键,url,test_method,data,title下面的数据就是要取的值,也就是Key和value的形式。
清菡
2020/12/02
2.3K0
Python读取结果写入Excel中
模板:使用Excel工作表数据自动生成多个Word文档
这是在网上收集到的一个示例,可以使用Excel工作表数据自动生成多个Word文档邮件。
fanjy
2023/12/12
4760
模板:使用Excel工作表数据自动生成多个Word文档
Excel技术:如何在一个工作表中筛选并获取另一工作表中的数据
问题:需要整理一个有数千条数据的列表,Excel可以很方便地搜索并显示需要的条目,然而,想把经过提炼的结果列表移到一个新的电子表格中,不知道有什么好方法?
fanjy
2022/11/16
18.7K0
Excel技术:如何在一个工作表中筛选并获取另一工作表中的数据
用Python玩转Excel | 写入数据
学习了使用xlrd库读取Excel数据后,接下来就学一下如何使用xlwt库保存数据到Excel文件。
TalkPython
2021/08/24
2.2K0
使用Python pandas读取多个Excel工作表
本文将尝试使用Python pandas读取来自同一文件的多个Excel工作表。我们可以通过两种方式来实现这一点:使用pd.read_excel()方法,并使用可选的参数sheet_name;另一种方法是创建一个pd.ExcelFile对象,然后解析该对象中的数据。
fanjy
2021/11/10
13.3K0
使用Python pandas读取多个Excel工作表
统计各个数据库的各个数据表的总数,然后写入到excel中
1、最近项目基本进入最后阶段了,然后会统计一下各个数据库的各个数据表的数据量,开始使用的报表工具,report-designer,开源的,研究了两天,发现并不是很好使,最后自己下班回去,晚上思考,想着还不如自己做一个,领导下命令,说这个活给你了,你做好给经理就行了。然后就开始不断的做。思路大概如下所示:
别先生
2018/10/09
2.1K0
python实现将数据写入Excel文件中「建议收藏」
注意,这里的xlwt是python的第三方模块,需要下载安装才能使用,不然导入不了(python第三方库的安装也非常简单,打开命令行,输入pip install xlwt就可以了)
全栈程序员站长
2022/09/14
1.3K0
Excel应用实践15:合并多个工作表
有时候,我们需要将工作簿中的所有工作表的数据合并到一个工作表中。如果工作表数量很少,可以直接手工使用复制粘贴操作,然而,如果工作表很多并且工作表中的数据量很大,手工复制既繁琐又容易出错漏。
fanjy
2019/07/19
1.1K0
用 VBA 将多个 Excel 文件里的数据汇总到一个 Excel 表
给出一个空汇总表,和若干单独的 Excel 文件,每个文件里头有一个表格里存有一个人的信息,要将这些文件里的信息全部对应地导入到汇总表里。
mzlogin
2020/04/16
4.4K0
用 VBA 将多个 Excel 文件里的数据汇总到一个 Excel 表
给出一个空汇总表,和若干单独的 Excel 文件,每个文件里头有一个表格里存有一个人的信息,要将这些文件里的信息全部对应地导入到汇总表里。
零式的天空
2022/03/24
2.8K0

相似问题

如何在数据帧中应用多个过滤器?

10

如何在R中实现多个数据帧与单个数据帧的左连接自动化

30

在PySpark中按行合并多个数据帧

60

如何在中合并两个数据帧?

30

将单索引熊猫数据帧转换为多个索引

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文