likes
comments
collection
share

Pandas处理Excel超简单

作者站长头像
站长
· 阅读数 41

「这是我参与2022首次更文挑战的第6天,活动详情查看:2022首次更文挑战」。

前言

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

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

安装

pip install pandas

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

实践

关于 DataFrame

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

DataFrame 和 Excel 的属性对照表

pandasExcel
DataFramesheet 页
Series
Index行号
row
NaN空单元格

数据输入输出

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

Pandas处理Excel超简单

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

Pandas处理Excel超简单

数据限制

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

Pandas处理Excel超简单

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

Pandas处理Excel超简单

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

Pandas处理Excel超简单

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

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

Pandas处理Excel超简单

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

数据处理

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

Pandas处理Excel超简单

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

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

行的操作

展示第 3 行数据。

Pandas处理Excel超简单

给第 4 行数据全部加 10

Pandas处理Excel超简单

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

对单元格的操作

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

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

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

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

Pandas处理Excel超简单

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

Pandas处理Excel超简单

最后

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

转载自:https://juejin.cn/post/7056390278659178533
评论
请登录