Pandas处理Excel超简单

简介: Pandas处理Excel超简单

前言


前几天有朋友咨询我关于学习 PythonVBS 的疑问,因为他想要将自己繁杂的 Excel 操作自动化,他了解到通过 PythonVBS 都可以达到他的目的,所以他在纠结到底学哪个?因为我就是搞 Python 得嘛,所以我当场就建议他学 Python

但是为了让这位朋友能够从实践上体验到 Python 的简洁高效,今天我们就一起来进入 PandasExcel 世界。


安装


pip install pandas
复制代码


当遇到安装出错时,一般可以通过升级 pip 和升级 setuptools 解决。


实践


关于 DataFrame


DataFramePandas 中的一种抽象数据对象(表格类型),Excel 中的数据都可以转换为 DataFrame 对象。


DataFrame 和 Excel 的属性对照表


pandas Excel
DataFrame sheet 页
Series
Index 行号
row
NaN 空单元格


数据输入输出


首先我们在 Jupyter 中使用 Pandas 打印一个两行两列的数据表。


网络异常,图片无法展示
|


然后我们将以上数据写入 excel 文件,最后读取 excel 文件的数据并且打印出来。


网络异常,图片无法展示
|


数据限制


首先我们将测试表格的数据增加到 1010 列。


网络异常,图片无法展示
|


我们可以重新读取这个表格,只展示前 5 行数据。


网络异常,图片无法展示
|


如果你想指定某行为列名(起始行),可以使用 header 参数,默认为 0


网络异常,图片无法展示
|


如上,你会发现,数据以第 5 行作为起始行,只显示了”前五行“。


我们还可以只展示列 10 大于 10 的数据。


网络异常,图片无法展示
|


你会发现,这一切都是如此简单优雅。


数据处理


我们如果想要对表格的数据进行处理,我们可以这样做。假设对列 6 的数据除以 2


网络异常,图片无法展示
|


其他的操作都是类似的,不再一一展示了。


以上展示的都是基于列的操作,关于行的操作如何实现呢?简单,你会发现关于列的操作都是用的列名,那对行进行操作就用到了行的索引。


行的操作


展示第 3 行数据。


网络异常,图片无法展示
|


给第 4 行数据全部加 10


网络异常,图片无法展示
|


我相信看到这里,你对其他的操作都已经心领神会了。


对单元格的操作


通常除了行列操作,我们可能会需要对某个单元格进行操作。


对单元格的定位需要借助 DataFrame 的方法来实现。但是呢,Pandas 为我们提供了不止一种方法,关于这几种方法的区别请看下图。


方法 解释
at 通过行/列标签去唯一定位单元格
loc 通过标签或者数组来访问单元格
iat 通过整数位置访问行/列对应的单元格


定位第 2 行第二列的单元格。


网络异常,图片无法展示
|


假设,我们想要对列 33 的数据 4 进行平方操作。


网络异常,图片无法展示
|


最后


其他 PandasExcel 的支持远不止这些,其中像我们常见的 Excel 公式,数据格式,排序,查找替换,透视图等等功能都是支持,甚至可以说比原本的 Excel 的功能更加丰富和自由。强烈建议有兴趣的同学去动手试一试 Pandas,一定会带给你”惊喜“。

相关文章
|
16天前
|
数据可视化 数据处理 Python
使用Pandas实现Excel中的数据透视表功能
本文介绍了如何使用Python的Pandas库实现Excel中的数据透视表功能,包括环境准备、创建模拟销售数据、代码实现及输出等步骤。通过具体示例展示了按地区和销售员汇总销售额的不同方法,如求和、平均值、最大值等,帮助读者掌握Pandas在数据处理上的强大能力。
52 12
|
5月前
|
数据挖掘 Python
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
544 0
|
3月前
|
Python
pandas 生成 Excel 时的 sheet 问题
pandas 生成 Excel 时的 sheet 问题
40 1
|
3月前
|
数据采集 索引 Python
pandas处理excel
pandas处理excel
|
3月前
|
Python
Python:Pandas实现批量删除Excel中的sheet
Python:Pandas实现批量删除Excel中的sheet
163 0
|
4月前
|
Python
【Python】解决pandas读取excel,以0向前填充的数字会变成纯数字
本文介绍了两种解决Python使用pandas库读取Excel时,数字前填充的0丢失问题的方法:一是在读取时指定列以字符串格式读取,二是在Excel中预先将数值转换为文本格式。
297 0
【Python】解决pandas读取excel,以0向前填充的数字会变成纯数字
|
4月前
|
算法 数据挖掘 Java
日常工作中,Python+Pandas是否能代替Excel+VBA?
日常工作中,Python+Pandas是否能代替Excel+VBA?
|
4月前
|
Python
Pandas 读取 Excel 斜着读
Pandas 读取 Excel 斜着读
31 0
|
4月前
|
关系型数据库 MySQL Shell
pandas读取mysql并导出为excel
pandas读取mysql并导出为excel
|
5月前
|
开发者 Python
【Python】已解决:(pandas read_excel 读取Excel报错)ImportError: Pandas requires version ‘2.0.1’ or newer of ‘x
【Python】已解决:(pandas read_excel 读取Excel报错)ImportError: Pandas requires version ‘2.0.1’ or newer of ‘x
324 0