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 pdfrom 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等。在工作中如果能够根据实际需求灵活运用这些技巧和工具,那么将大大提升数据处理的效率和质量。
相关文章:
Python 处理 Excel 表格的 14 个常用操作
目录 1. 安装依赖库 2. 导入库 3. 读取Excel文件 4. 写入Excel文件 5. 创建工作表 6. 访问工作表 7. 读取单元格数据 8. 写入单元格数据 9. 获取行数和列数 10. 过滤数据 11. 排序数据 12. 添加新行 13. 删除行或列 14. 计算汇总统计 总结 无论是数据分析师、财…...
PyQt有哪些主要组件?
这是一个非常强大的跨平台GUI库,可以让你用Python语言创建美观且功能强大的桌面应用程序。让我们先来了解一下它的主要组件。 首先,我们要介绍的是窗口。窗口是PyQt应用程序的基本元素,所有的GUI元素都放置在窗口中。你可以创建主窗口、模态…...
力推C语言必会题目终章(完结篇)
W...Y的主页 😊 代码仓库分享 💕 今天是分享C语言必会题目最终章,全部都是硬货,大家都坐好准备开始喽!!! 编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内…...
CS5263替代停产IT6561连接DP转HDMI音视频转换器ASL 集睿致远CS5263设计电路原理图
ASL集睿致远CS5263是一款DP1.4到HDMI2.0b转换器芯片,设计用于将DP1.4源连接到HDMI2.0b接收器。 CS5263功能特性: DP接口包括4条主通道、辅助通道和HPD信号。接收器支持每通道5.4Gbps(HBR2)数据速率。DP接收机结合了HDCP1.4和HDCP…...
数据分析 | 随机森林如何确定参数空间的搜索范围
1. 随机森林超参数 极其重要的三个超参数是必须要调整的,一般再加上两到三个其他超参数进行优化即可。 2. 学习曲线确定n_estimators搜索范围 首先导入必要的库,使用sklearn自带的房价预测数据集: import numpy as np import pandas as pd f…...
5G+AI数字化智能工厂建设解决方案PPT
导读:原文《5GAI数字化智能工厂建设解决方案》(获取来源见文尾),本文精选其中精华及架构部分,逻辑清晰、内容完整,为快速形成售前方案提供参考。数字化智能工厂定义 智能基础架构协同框架 - 端、边、云、网…...
Windows配置编译ffmpeg +音视频地址
Windows配置MinGW及MinGW-make使用实例 https://blog.csdn.net/Henoiiy/article/details/122550618 ffmpeg安装遇错:nasm/yasm not found or too old. Use --disable-x86asm for a crippled build. https://blog.csdn.net/sayyy/article/details/124337834https://…...
C语言 常用工具型API --------system()
函数名: system() 用 法: int system(char *command); 原理: 加载一个子进程去执行指定的程序,而想Linux命令基本都是一个单独的进程实现的,所以你所掌握的Linux命令越多,该函数功…...
车规级半导体分类(汽车芯片介绍)
车规级半导体,也被称为“汽车芯片”,主要应用于车辆控制装置、车载监控系统和车载电子控制装置等领域。这些半导体器件主要分布在车体控制模块上,以及车载信息娱乐系统方面,包括动力传动综合控制系统、主动安全系统和高级辅助驾驶…...
opencv图像轮廓检测
效果展示: 代码部分: import cv2 import numpy as np img cv2.imread(C:/Users/ibe/Desktop/picture.PNG,cv2.IMREAD_UNCHANGED) # 类型转换 img cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)# 结构元 kernel cv2.getStructuringElement(cv2.MORPH_REC…...
诚迈科技荣膺小米“最佳供应商奖”
近日,诚迈科技受邀参加小米战略合作伙伴HBR总结会。诚迈科技以尽职尽责的合作态度、精益求精的交付质量荣膺小米公司颁发的最佳供应商奖,其性能测试团队荣获优秀团队奖。 诚迈科技与小米在手机终端方向一直保持着密切的合作关系,涉及系统框架…...
分布式 - 消息队列Kafka:Kafka 消费者的消费位移
文章目录 01. Kafka 分区位移02. Kafka 消费位移03. kafka 消费位移的作用04. Kafka 消费位移的提交05. kafka 消费位移的存储位置06. Kafka 消费位移与消费者提交的位移07. kafka 消费位移的提交时机08. Kafka 维护消费状态跟踪的方法 01. Kafka 分区位移 对于Kafka中的分区而…...
H3C QoS打标签和限速配置案例
EF:快速转发 AF:确保转发 CS:给各种协议用的 BE:默认标记(尽力而为) VSR-88-2 出口路由配置: [H3C]dis current-configuration version 7.1.075, ESS 8305 vlan 1 traffic classifier vlan10 operator and if-match a…...
带curl的docker镜像image
带curl的docker镜像,便于k8s中查找问题,确认容器内部是否可用。 用于测试网络的工具,带有curl nslookup等命令 镜像名docker.io/appropriate/curl 测试命令docker run --rm -it docker.io/appropriate/curl /bin/sh 已测试可用 用于测试网…...
Hadoop数据迁移distcp
Hadoop数据迁移distcp 准备工作 确认源集群(a),目标集群(b)确认a集群的主节点和b集群的主节点确认两个集群的网络相通确认迁移模式(全量迁移还是增量迁移),这里选择全量迁移 迁移文件 迁移t…...
QT-Mysql数据库图形化接口
QT sql mysqloper.h qsqlrelationaltablemodelview.h /************************************************************************* 接口描述:Mysql数据库图形化接口 拟制: 接口版本:V1.0 时间:20230727 说明:支…...
LeetCode150道面试经典题-- 合并两个有序链表(简单)
1.题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 2.示例 示例 1: 输入:l1 [1,2,4], l2 [1,3,4] 输出:[1,1,2,3,4,4] 示例 2: 输入:l1 [], l2 [] 输…...
GitHub 如何部署写好的H5静态页面
感谢粉皮zu的私信,又有素材写笔记了。(●’◡’●) 刚好记录一下我示例代码的GitHub部署配置,以便于后期追加仓库。 效果 环境 gitwin 步骤 第一步 新建仓库 第二步 拉取代码 将仓库clone到本地 git clone 地址第三步 部署文件 新建.github\workflo…...
SharkTeam:Worldcoin运营数据及业务安全分析
Worldcoin的白皮书中声明,Worldcoin旨在构建一个连接全球人类的新型数字经济系统,由OpenAI创始人Sam Altman于2020年发起。通过区块链技术在Web3世界中实现更加公平、开放和包容的经济体系,并将所有权赋予每个人。并且希望让全世界每一个人都…...
C语言编程练习
考点:【字符串】【数组】 题目1. 打印X 题目描述 输入一个正整数N, 你需要按样例的方式返回一个字符串列表。 1≤N≤15。 样例 1: 输入:1 输出:[“X”] X样例 2: 输入:2 [“XX”, “XX”] …...
3步解决B站缓存视频播放难题:m4s-converter使用指南
3步解决B站缓存视频播放难题:m4s-converter使用指南 【免费下载链接】m4s-converter 一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾为B站缓存视频无法在其他…...
MSP430单片机低功耗设计实战:从架构到代码的灵活性解析
1. 项目概述:为什么是MSP430?如果你在嵌入式领域摸爬滚打了一段时间,尤其是在对功耗极其敏感的应用场景里,比如智能穿戴、便携医疗设备、无线传感器网络或者那些需要电池供电数年的工业传感器,那么“MSP430”这个名字对…...
生物信息学流水线效率翻倍:在Linux集群上为fastp v0.23.4配置多线程与批量处理脚本
生物信息学流水线效率翻倍:在Linux集群上为fastp v0.23.4配置多线程与批量处理脚本 当实验室的测序仪每天吐出TB级的FASTQ文件时,生物信息工程师的终端里往往挤满了等待处理的nohup进程。我们曾用三台服务器连续运行72小时才完成某批800个样本的质控——…...
CW32驱动S12SD紫外线传感器:I2C通信、数据解析与嵌入式实践
1. 项目概述与核心需求解析最近在做一个户外环境监测的小玩意儿,需要实时监测紫外线强度,选来选去,最终敲定了S12SD这款紫外线传感器模块。之所以选它,一方面是因为它直接输出数字信号,省去了模拟信号调理的麻烦&#…...
你的微信聊天记录,真的安全吗?揭秘永久保存数字记忆的开源方案
你的微信聊天记录,真的安全吗?揭秘永久保存数字记忆的开源方案 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHu…...
wpa_ctrl接口简介和使用总结
参考: wpa_supplicant简介与基础使用总结-CSDN博客 wpa_cli核心操作总结-CSDN博客 认识wpa_ctrl接口 在嵌入式Linux的C语言开发中,与 wpa_supplicant 交互的标准方法就是使用它官方提供的 wpa_ctrl 接口。这个接口以一组简单的C函数形式提供,…...
嵌入式网络开发避坑:LwIP软件定时器溢出处理与链表排序的实战细节
嵌入式网络开发避坑:LwIP软件定时器溢出处理与链表排序的实战细节 在嵌入式网络开发中,LwIP协议栈因其轻量级和高度可裁剪性成为众多开发者的首选。然而,在实际应用中,软件定时器的溢出处理和链表排序逻辑往往是引发隐蔽问题的重灾…...
Matlab 2020a老版本用户福音:手把手教你配置MinGW 6.3.0并集成第三方EXR工具
Matlab 2020a兼容性解决方案:MinGW 6.3.0与EXR工具链深度整合指南 对于长期依赖Matlab 2020a进行科研或工程开发的用户来说,遇到需要处理EXR图像文件的需求时往往会陷入两难——既无法放弃经过验证的稳定开发环境,又需要扩展功能支持。本文将…...
MATLAB实战:从SSE到R方,手把手教你用误差指标评估预测模型
1. 为什么需要误差指标? 在数据分析和预测建模中,我们经常需要评估模型的预测效果。想象一下,你开发了一个房价预测模型,输入房屋面积、地段等信息后,模型会输出预测价格。但你怎么知道这个预测准不准呢?这…...
不止是怀旧:用Docker部署超级马里奥,聊聊容器化对经典软件保存的意义
容器化时光机:用Docker守护数字文化遗产的技术实践 在数字时代洪流中,经典软件如同沙漏中的细沙,正以惊人的速度从我们的指尖流逝。那些曾经定义了一个时代的程序、游戏和工具,正面临着"数字消亡"的威胁——操作系统迭代…...
