乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能-excel筛选

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能-excel筛选

作者:乔山办公网日期:

返回目录:excel表格制作

懂Excel也能轻松入门Python<a href='https://www.qiaoshan022.cn/tags/shujufenxi_2710_1.html' target='_blank'>数据分析</a>包pandas(一):筛选功能

转发本文并私信我"python",即可获得Python资料以及各种心得(持续更新的)

前言

经常听别人说 Python 数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死。后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas 。

Excel 自带筛选功能,可以对表格中进行各种条件筛选。今天我们就用 pandas 看看怎么做到 Excel 的筛选功能,并且看看 Excel 也做不到的功能。


数据

本文示例数据如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • 数据都是用代码生成的,就是一些个人信息数据

加载数据

pandas 需要加载 Excel 数据,非常容易,如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • import pandas as pd ,导入 pandas 包
  • pd.read_excel ,即可加载 Excel 数据
  • 指定文件路径,由于文件在 Python 脚本同目录,直接输入文件名即可
  • sheet_name 指定读取哪个工作表
  • 还有很多其他参数,我们这次的数据非常规范,因此不需要用到其他参数

按位置过滤

Excel 的筛选只能根据列值进行操作,因此我们在表格添加一序号列。看图:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • 为了与 pandas 行索引保持一致,这里添加的列值是从0开始

接着试试,"显示第3至6行",如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • 功能卡"数据"页面,在"排序和筛选"中点击大大的"筛选"图标
懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • 点首行第一列的下角标签
  • 默认是全选了,点一下"全选",即可取消所有选中的
  • 分别点选对应的值即可

看看 pandas 中如何做到,如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • pandas 中的 DataFrame 自带行索引
  • 直接使用 df.loc[2:5]

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

按值过滤

位置过滤太简单了,很少场景使用。这次看看"显示所有男性"记录。

Excel 不介绍了,看看 pandas 怎么完成:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • df['sex'] ,就是性别列
  • df['sex']=='M' ,语义清晰,性别等于M

多条件也不在话下,"显示男性并且血型是A+",如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能


当然,有更加简单的写法,如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • query 方法,可以直接接受一个查询字符串,是不是很像 Sql 呢

指定多个值也很简单,"血型是A+或B-",如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • 查询字符串可以直接用 in

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

模式匹配

太简单了?来个复杂一点的。 "血型值首字母是A"的记录。Excel 中的筛选也是强大的,直接有此功能。如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能


pandas 对应操作如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • 血型 列是文本类型,因此可以用 .str ,从而使用一系列文本快捷方法

当然,pandas 中的文本处理功能比 Excel 强大得多,来看看。 "住址内容包含 天津市 3字"的记录。如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

什么,Excel也可以?来看看下面这个需求就不寻常了。 "住址内容有 x座 ,x是字母a至c,大小写都算",看看 pandas 怎么做:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

  • contains 方法可以用正则表达式

值范围

"收入在5000至8000的男性",pandas 如下:

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能

简单吧。Excel 上操作也简单,不再展示。

再看看这个需求。 "出生在 1980至1990 之间的男性"

懂Excel也能轻松入门Python数据分析包pandas(一):筛选功能


冰山一角

Excel 的筛选功能无疑是强大的,不过 pandas 也很厉害。想必有抬杠的小伙伴会说,既然 Excel 自带功能都有,用 pandas 干啥?当然是自动化啦。并且 pandas 中有许多功能,在 Excel 中需要用复杂的函数公式或 Vba 才能实现。

下期看看 Excel 的高级筛选功能,在 pandas 中是如何实现。

如果希望从零开始学习 pandas ,那么可以看看我的 pandas 专栏。

相关阅读

  • Excel表格中怎么使用筛选功能-excel筛选

  • 乔山办公网excel表格制作
  • excel筛选,本文出自excel教程网www.exceljc.com1、我们首先看看某电商平台的销售额和销售量 ,我们的目标是把所有少于10w以下的销售额标红加粗以示区别。2、然后选择数据-筛选,你会发现
关键词不能为空
极力推荐
  • 怎么才能把pdf转换成excel?-pdf转excel

  • pdf转excel,用各种图表来表示数据直观明了;利用超级链接功能,用户可以快速打开局域网或Interner上的文件,与世界上任何位置的互联网用户共享工作薄文件。

ppt怎么做_excel表格制作_office365_word文档_365办公网