Python 处理 Excel 表格的 14 个常用操作

目录

1. 安装依赖库

2. 导入库

3. 读取Excel文件

4. 写入Excel文件

5. 创建工作表

6. 访问工作表

7. 读取单元格数据

8. 写入单元格数据

9. 获取行数和列数

10. 过滤数据

11. 排序数据

12. 添加新行

13. 删除行或列

14. 计算汇总统计

总结


无论是数据分析师、财务专员还是研究人员,Excel都是日常工作中必不可少的工具之一。而借助Python的强大功能,能够极大地提高Excel数据处理的效率和灵活性。接下来,让我们一起探索这些常用的Excel操作,为工作流程注入更多的便利和效率吧!

 

1. 安装依赖库

在命令行中使用`pip`命令安装`pandas`和`openpyxl`库,这两个库分别用于处理Excel和读/写Excel文件。


   pip install pandas openpyxl

2. 导入库

在Python脚本中导入`pandas`和`openpyxl`库。


   import pandas as pd
   from openpyxl import Workbook, load_workbook

3. 读取Excel文件

使用`read_excel()`函数从Excel文件中读取数据,该函数返回一个DataFrame对象,其中包含了Excel文件中的数据。


   data = pd.read_excel('filename.xlsx')

   注意,`filename.xlsx`是Excel文件的名称。

4. 写入Excel文件

使用`to_excel()`函数将数据写入Excel文件,该函数将DataFrame对象中的数据写入指定的Excel文件。


   data.to_excel('new_filename.xlsx', index=False)

   `index=False`表示不包含索引列。

5. 创建工作表

使用`create_sheet()`函数创建一个新的工作表。

   workbook = Workbook()
   worksheet = workbook.create_sheet('Sheet1')

   在这个例子中,我们创建了一个名为'Sheet1'的新工作表。

6. 访问工作表

使用`active`属性或`get_sheet_by_name()`函数访问现有工作表。

 

 worksheet = workbook.active
   # 或
   worksheet = workbook.get_sheet_by_name('Sheet1')

   `active`属性访问活动的工作表,而`get_sheet_by_name()`函数访问具有指定名称的工作表。

7. 读取单元格数据

使用`cell()`方法获取特定单元格的值,需要提供行号和列号。


   cell_value = worksheet.cell(row=1, column=1).value

   这个例子中,我们读取了第一行第一列的单元格数据。

8. 写入单元格数据

使用`cell()`方法将值写入特定的单元格,同样需要提供行号和列号。

   
   worksheet.cell(row=1, column=1, value='Hello')

   这个例子中,在第一行第一列的单元格写入了字符串'Hello'。

9. 获取行数和列数

使用`shape`属性获取数据表的行数和列数。

 num_rows = data.shape[0]
   num_cols = data.shape[1]

   `shape`属性返回一个包含行数和列数的元组。

10. 过滤数据

使用条件筛选语句过滤数据,例如,根据某一列的值大于特定值来过滤数据。


    filtered_data = data[data['Column'] > 10]

    这个例子中,我们过滤了具有'Column'列大于10的数据。

11. 排序数据

使用`sort_values()`函数按照指定列对数据进行排序。


    sorted_data = data.sort_values(by='Column')

    这个例子中,我们按照'Column'列对数据进行升序排序。

12. 添加新行

使用`append()`函数将新行数据添加到DataFrame对象中。
   

new_data = pd.DataFrame({'A': [1], 'B': [2], 'C': [3]})
    data = data.append(new_data, ignore_index=True)

    这个例子中,我们添加了一个包含'A'、'B'和'C'列的新行数据。

13. 删除行或列

使用`drop()`函数删除特定的行或列。

 data = data.drop(index=0) # 删除第一行
 data = data.drop(columns=['Column1', 'Column2']) # 删除指定列

    这个例子中,我们删除了第一行和名为'Column1'和'Column2'的列。

14. 计算汇总统计

使用`describe()`函数计算数据的基本统计信息,例如,均值、标准差等。


    summary_stats = data.describe()

    这个例子中,我们计算了数据的基本统计信息。

这些是使用Python处理Excel时常用的操作。根据具体需求,您可以选择其中一个或多个操作来处理和操作Excel文件。希望对您有所帮助!

总结

从读取和写入Excel文件、创建和访问工作表,到单元格数据的读取和写入,再到数据的过滤、排序和汇总统计,这些操作涵盖了数据处理过程中的关键步骤。使用Python处理Excel,不仅能够提高工作效率,还能为数据处理提供更多的灵活性和定制化选项。

同时要注意的是,这只是Excel处理中的冰山一角,Python在处理Excel方面还有更多强大的功能和库可供探索,例如xlrd、xlwt、xlsxwriter等。在工作中如果能够根据实际需求灵活运用这些技巧和工具,那么将大大提升数据处理的效率和质量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/76733.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

实习笔记(一)

自定义注解: 自定义注解中有三个元注解Target,Retention,Document /*** 系统日志注解** author Mark sunlightcsgmail.com*/ Target(ElementType.METHOD) Retention(RetentionPolicy.RUNTIME) Documented public interface SysLog {String value() default "…

『C语言初阶』第八章 -隐式类型转换规则

前言 今天小羊又来给铁汁们分享关于C语言的隐式类型转换规则,在C语言中类型转换方式可分为隐式类型转换和显式类型转换(强制类型转换),其中隐式类型转换是由编译器自动进行,无需程序员干预,今天小羊课堂说的就是关于隐式类型转换…

Splashtop 获得 ISO 27001 认证

2023年8月15日 加利福尼亚州库比蒂诺 Splashtop 在随处办公远程解决方案领域处于领先地位,该公司今天宣布已获得 ISO/IEC 27001 认证,印证了其对坚持最高标准的信息安全管理系统(ISMS)、为客户提供数据保护以及遵守法律法规要求的…

ChatGPT​保密吗?它有哪些潜在风险?如何规避?

自2022年11月公开发布以来,ChatGPT已成为许多企业和个人的必备工具,但随着该技术越来越多地融入我们的日常生活,人们很自然地想知道:ChatGPT是否是保密的。 问:ChatGPT保密吗? 答:否&#xff0…

矿井下无人值守变电所电力监控系统的探讨与产品选型

贾丽丽 安科瑞电气股份有限公司 上海嘉定 201801 摘要:为了探讨井下无人值守变电所的电力监控系统技术,以西山煤电马兰矿为背景,详细阐述了井下无人值守变电所电力监控系统技术的各项基本参数,如额定工作电压及整机输入视在功…

[Blender]Geometry nodes altermesh to UE

首先要先下载插件 AlterMesh – Use geometry nodes inside Unreal 下载对应版本的插件后 打开UE,在对应的设置里面挂上blender.exe的路径 去官方下载一个Blender Geometry nodes 的示例 Demo Files — blender.org​​​​​​

使用蓝牙外设却不小心把台式机电脑蓝牙关了

起因 今天犯了一个贼SB的错误,起因是蓝牙键盘突然就不能输入了(虽然是连接状态,但是按什么键都没有反应) 原来我的解决方法就是重启一下电脑,但是那会电脑开了贼多的软件。我就想重启也太麻烦了,既然重启…

Python web实战之Django 的跨站点请求伪造(CSRF)保护详解

关键词:Python、Web、Django、跨站请求伪造、CSRF 大家好,今天我将分享web关于安全的话题:Django 的跨站点请求伪造(CSRF)保护,介绍 CSRF 的概念、原理和保护方法. 1. CSRF 是什么? CSRF&#…

每天一练:SpringBoot连接mq

目录 每天一练:Springboot连接rabbitmq 每天一练:Springboot连接rabbitmq 目录一、部署Rabbitmq?二、增加maven依赖三、连接RabbitMq四、发布和订阅消息总结 一、部署Rabbitmq? 这里rabbitmq采用docker安装部署。 拉取docker镜像 [root192 ~]# docker…

区间预测 | MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测

区间预测 | MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测 目录 区间预测 | MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测效果一览基本介绍模型描述程序设计参考资料 效果一览 基本介绍 MATLAB实现QRGRU门控循环单元分位数回归时间序列区间预测。基于分位…

【探索Linux】—— 强大的命令行工具 P.3(Linux开发工具 vim)

阅读导航 前言vim简介概念特点 vim的相关指令vim命令模式(Normal mode)相关指令插入模式(Insert mode)相关指令末行模式(last line mode)相关指令 简单vim配置(附配置链接)温馨提示 前言 前面我们讲了C语言的基础知识,也了解了一些数据结构&…

c#设计模式-结构型模式 之 桥接模式

前言 桥接模式是一种设计模式,它将抽象与实现分离,使它们可以独立变化。这种模式涉及到一个接口作为桥梁,使实体类的功能独立于接口实现类。这两种类型的类可以结构化改变而互不影响。 桥接模式的主要目的是通过将实现和抽象分离,…

机器学习知识点总结:什么是GBDT(梯度提升树)

什么是GBDT(梯度提升树) 虽然GBDT同样由许多决策树组成,但它与随机森林由许多不同。 其中之一是GBDT中的树都是回归树,树有分类有回归,区分它们的方法很简单。将苹果单纯分为好与坏的是分类树,如果能为苹果的好坏程度打个分&…

c++实现哈希桶

闭散列的回顾 在前面的学习中我们知道了闭散列的运算规则,当两个数据计算得到的位置发生冲突时,它会自动的往后寻找没有发生冲突的位置,比如说当前数据的内容如下: 当插入的数据为33时计算的位置为3,可是位置3已经被占…

一百五十二、Kettle——Kettle9.3.0本地连接Hive3.1.2(踩坑,亲测有效,附截图)

一、目的 由于先前使用的kettle8.2版本在Linux上安装后&#xff0c;创建共享资源库点击connect时页面为空&#xff0c;后来采用如下方法&#xff0c;在/opt/install/data-integration/ui/menubar.xul文件里添加如下代码 <menuitem id"file-openZiyuanku" label&…

Zass主题 - 手工艺术家和工匠的WooCommerce商城主题

Zass主题是适合手工艺术家和工匠的完美 WordPress / WooCommerce 主题。无论您是想为您的手工制作业务构建功能齐全的 Etsy Style 在线商店、博客还是作品集&#xff0c;Zass 主题都是您的正确选择。凭借其极其强大的自定义电子商务功能、无限的作品集风格、不同的博客风格和无…

DNNGP模型解读-early stopping 和 batch normalization的使用

一、考虑的因素&#xff08;仅代表个人观点&#xff09; 1.首先我们看到他的这篇文章所考虑的不同方面从而做出的不同改进&#xff0c;首先考虑到了对于基因组预测的深度学习方法的设计 &#xff0c;我们设计出来这个方法就是为了基因组预测而使用&#xff0c;这也是主要目的&…

sklearn机器学习库(二)sklearn中的随机森林

sklearn机器学习库(二)sklearn中的随机森林 集成算法会考虑多个评估器的建模结果&#xff0c;汇总之后得到一个综合的结果&#xff0c;以此来获取比单个模型更好的回归或分类表现。 多个模型集成成为的模型叫做集成评估器&#xff08;ensemble estimator&#xff09;&#xf…

NLP中的RNN、Seq2Seq与attention注意力机制

目录 NLP自然语言处理 的RNN、Seq2Seq与attention注意力机制 RNN循环神经网络 前馈网络入门 前馈网络 循环网络 多层感知器架构示例 循环神经网络的运作原理 展开 RNN seq2seq模型 Attention&#xff08;注意力机制&#xff09; 总结 引用 NLP自然语言处理 的RNN、…

iPhone删除的照片能恢复吗?不小心误删了照片怎么找回?

iPhone最近删除清空了照片还能恢复吗&#xff1f;大家都知道&#xff0c;照片对于我们来说是承载着美好回忆的一种形式。它记录着我们的平淡生活&#xff0c;也留住了我们的美好瞬间&#xff0c;具有极其重要的纪念价值。 照片不小心误删是一件非常难受的事&#xff0c;那么iP…