首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何阅读Excel工作簿(pandas)

如何阅读Excel工作簿(pandas)
EN

Stack Overflow用户
提问于 2015-10-06 17:53:40
回答 2查看 9.3K关注 0票数 3

首先,我想说我无论如何都不是专家。我很精通,但我的日程安排和学习Python的负担就像我年轻时应该做的那样!

问题:

我有一个工作簿,有时会有多个工作表。在阅读工作簿时,我不知道工作表的数量或它们的工作表名称。每个工作表上的数据排列都是相同的,有些列的名称是“未命名”。问题是,我在网上尝试或找到的所有内容都使用pandas.ExcelFile来收集所有工作表,这很好,但我需要能够跳过4行,然后只读取42行,并解析特定的列。尽管工作表可能具有完全相同的结构,但列名可能相同或不同,但希望将它们合并。

所以这就是我所拥有的:

代码语言:javascript
运行
AI代码解释
复制
import pandas as pd
from openpyxl import load_workbook

# Load in the file location and name
cause_effect_file = r'C:\Users\Owner\Desktop\C&E Template.xlsx'

# Set up the ability to write dataframe to the same workbook
book = load_workbook(cause_effect_file)
writer = pd.ExcelWriter(cause_effect_file) 
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

# Get the file skip rows and parse columns needed
xl_file = pd.read_excel(cause_effect_file, skiprows=4, parse_cols = 'B:AJ', na_values=['NA'], convert_float=False)

# Loop through the sheets loading data in the dataframe
dfi = {sheet_name: xl_file.parse(sheet_name)
          for sheet_name in xl_file.sheet_names}

# Remove columns labeled as un-named
for col in dfi:
    if r'Unnamed' in col:
        del dfi[col]

# Write dataframe to sheet so we can see what the data looks like
dfi.to_excel(writer, "PyDF", index=False)

# Save it back to the book
writer.save()

我正在处理的文件的链接在Excel File下面

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-06 20:42:34

请根据您的具体需求,尝试修改以下内容:

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

df = pd.DataFrame()
xls = pd.ExcelFile(path)

然后遍历所有可用的数据表:

代码语言:javascript
运行
AI代码解释
复制
for x in range(0, len(xls.sheet_names)): 
    a = xls.parse(x,header = 4, parse_cols = 'B:AJ')
    a["Sheet Name"] = [xls.sheet_names[x]] * len(a)
    df = df.append(a)

您可以调整每个工作表的标题行和要读取的列。我添加了一个列,它将指示行所来自的数据表的名称。

票数 2
EN

Stack Overflow用户

发布于 2015-10-06 17:58:30

您可能想看看在openpyxl中使用read_only模式。这将允许您只加载那些您感兴趣的工作表,并且只查看您感兴趣的单元格。

如果您想使用Pandas数据帧,那么您必须自己创建这些数据帧,但这应该不会太难。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32976423

复制
相关文章
Excel小技巧79:如何跟踪Excel工作簿的修改
你是否正在寻找跟踪Excel电子表格更改的方法?在许多情况下,你必须将一个文件分发给多个人,并跟踪所做的更改。你可能希望跟踪更改的时间、更改者、更改发生在哪个单元格中以及更改了哪些数据。
fanjy
2021/04/21
6.7K0
Excel小技巧79:如何跟踪Excel工作簿的修改
Excel事件(三)工作簿事件
大家好,上节介绍工作表事件,本节将介绍工作簿事件,工作簿数量较多,但并没有工作表事件常用,只简单介绍几个常用的工作簿事件。
无言之月
2019/10/13
2.3K0
Python-Excel-07-新建Excel工作簿
系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3.2
zishendianxia
2019/10/23
8450
Java保护Excel工作簿和工作表
出于安全原因,你可能需要保护整个工作簿或工作表。 有时,你甚至可能还需要保护某个工作表,但却保留指定的单元格进行编辑。 本文将介绍如何使用Free Spire.XLS for Java来实现这些操作。
崔笑颜
2020/06/08
1.5K0
Excel Power Query学习:如何合并两个Excel工作簿
Excel Power Query功能强大,但我一直没有涉足,因为Excel太博大精深了,光是Excel本身的功能、Excel公式与函数、VBA就够研究的了。然而,新的东西总是要接触的,毕竟也是Excel的一部分。后续会学习一些这方面的知识并与大家分享。本文主要学习整理自stringfestanalytics.com,供参考。
fanjy
2022/11/16
2K0
Excel Power Query学习:如何合并两个Excel工作簿
如何在前端应用中合并多个 Excel 工作簿
SpreadJS是纯前端的电子表格控件,可以轻松加载 Excel 工作簿中的数据并将它们呈现在前端浏览器应用的网页上。
葡萄城控件
2023/10/11
3090
如何在前端应用中合并多个 Excel 工作簿
Excel小技巧78:恢复未保存的Excel工作簿
我们可能碰到过这样的情形,正在编辑Excel工作簿时,Excel突然崩溃了(例如Excel老半天都没有响应)或者电脑突然断电了,这让我们来不及保存工作簿。此时,如何恢复我们的成果?
fanjy
2021/03/12
2.1K0
Excel-VBA复制工作表到新工作簿方法
如:在文件“自动工具.xlsx”中有一个工作表为“模板”。我想在“模板”工作表中输入数据,再另存为一个新的文件为“小龙女.xlsx”
哆哆Excel
2022/10/31
11.8K0
Excel小技巧31:引用工作表或工作簿
在使用公式时,我们可以引用不同工作表甚至是不同工作簿中的单元格或单元格区域。其一般语法是:
fanjy
2020/04/02
2K0
快速合并多个CSV文件或Excel工作簿
合并多个CSV文件、文本文件、Excel工作簿等操作是我们日常工作中经常碰到的事,如果一个一个文件复制粘贴,费时费力又容易出错。当然,可以使用VBA来解决,但前提是你必须懂VBA。这里有一个简单快速的方法,使用Power Query。
fanjy
2023/08/30
1.6K0
快速合并多个CSV文件或Excel工作簿
Excel实战技巧89:强制用户保护工作簿/工作表
Private Sub Workbook_BeforeClose(Cancel As Boolean)
fanjy
2020/11/06
9940
Excel实战技巧78: 创建个人宏工作簿
个人宏工作簿是一个文件,可以在应用程序开启时运行其中的VBA代码,就像是运行功能区选项卡中的命令一样。创建个人宏工作簿很简单,如下所示。
fanjy
2020/05/25
3.1K0
Excel实战技巧78: 创建个人宏工作簿
Excel小技巧39:将工作簿藏起来
有时候,我们打开了多个工作簿。我们不想关掉其中的一些工作簿,因为有可能会用到它,而这些工作簿可能来自不同的文件夹,也可能工作簿文件较大导致开启较慢,这样放在桌面上避免到处查找文件或者打开慢的影响,可供随时使用。
fanjy
2020/06/18
8360
快速汇总多个工作簿/工作表中的数据(Excel工具推荐)
很多数据散落在很多工作表或者工作簿中,由于某项工作我们需要将这些数据做个汇总。比方,我们有以下三个工作簿
wujunmin
2021/09/07
11K1
快速汇总多个工作簿/工作表中的数据(Excel工具推荐)
一日一技:pandas读取多个工作簿
在使用pandas读Excel文件的时候,可能会遇到有多个工作簿的情况。如果我们直接像下面这样写代码:
青南
2019/02/26
2.3K0
Excel应用实践10:合并多个工作簿中的数据
我有超过50个具有相同格式的Excel文件,它们的列标题相同,并且都放置在同一文件夹,有什么快速的方法将它们合并到一个单独的Excel文件的一个工作表中?
fanjy
2019/07/19
2.3K0
Excel应用实践21:实现工作簿所有工作表中的多值替换
有两个工作簿,一个工作簿中存放着要查找并替换成的文本,如下图1所示,列A中是要查找的文本,将列A中查找到的文本替换成列B中相应的文本,例如,将找到的“Excel”替换成“完美Excel”。
fanjy
2019/09/29
3.1K0
ExcelVBA汇总多工作簿中指定工作表到新工作簿
哆哆Excel
2023/09/09
4820
ExcelVBA汇总多工作簿中指定工作表到新工作簿
点击加载更多

相似问题

使用Excel VBA关闭Excel工作簿时阅读内容

12

C#阅读Excel工作簿、OLEDB或Excel Interop?

41

xlwings与openpyxl阅读Excel工作簿的差异

1124

Docker pandas阅读excel

265

如何使用pandas.to_excel通过代码创建包含多个工作表的Excel工作簿?

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文