写点什么

懂点 EXCEL 就行!教你利用 Python 做数据筛选(上)

用户头像
智分析
关注
发布于: 2021 年 01 月 25 日
懂点EXCEL就行!教你利用Python做数据筛选(上)

前言

Python 的数据清洗功能有多厉害,相信不用我说大家都知道了,寥寥几行代码便可以把一份杂乱无章的表格给处理的干干净净。但是 python 也是不容易入门的,毕竟编程语言要理解和精通也是要花不少功夫的,所以很多小伙伴纷纷倒在了 python 的大门外。今天给大家来点干货,教大家如何利用 python 对 EXCEL 数据进行筛选,让大家可以对 python 快速入门,并可以领略到 python 的数据分析魅力。

数据源

我们要先用到一份 EXCEL 示例文件,在这里我选用了一份电商订单明细表,数据已脱敏:

EXCEL 筛选

如果在 EXCEL 里进行筛选,我们一般方法是利用 EXCEL 自身的筛选功能,在弹出的筛选界面里用鼠标进行勾选,例如我们要筛选订单日期为 2010 年的和订单等级为高级的:




类似以上这样的筛选需求,在 EXCEL 里就可以实现,当然,除了这个办法之外,我们也可以通过其他的工具去实现,今天在这里教大家利用 ETL+python 的组合方法去实现,这两个工具在数据清洗上非常厉害。大家不要听到 python 就打退堂鼓,以下的教程非常浅显易懂,即使是小白也可以快速入门。在开始教学之前,我们要先用到一个厉害的 ETL 工具:智分析。

加载数据

由于智分析的 ETL 是在网页端上进行处理的,我们首先要做的就是先把本地的数据源导进智分析平台里,在智分析数据连接的界面里便可以快速把数据源导进来。除了本地的数据文件外,智分析也支持 mysql、阿里云等关系型数据库的连接。打开 ETL 的界面,把关系数据源的组件拉拽到展示区里,根据存放路径找到您的数据源:


鼠标右键点击关系数据源的“查看输出”我们可以对数据源的输出效果进行预览:

条件过滤

当完成了数据连接后,接下来就可以利用智分析 ETL 里自带的 python 脚本对数据进行各种处理,我们先把 python 的组件拉拽到中间的展示区,并与上面的关系数据源进行相连:


点击 python 的输入框进行查看,可以看到这里的输入框与 pycharm 等软件的输入框基本一样,只要熟悉 python 的小伙伴都可以轻松上手,而且系统已经提前输入了部分脚本,这些代码是系统默认自带的,无需自己写,非常贴心。大家可以看到,提前写好的脚本主要是调用 numpy、pandas 这两个库以及定义了函数:

根据上述提到的需求,我们目的主要是对订单日期以及订单等级这两个字段进行筛选,我们首先先定义两个变量 cond 与 cond1,cond 在此处调用了 pandas 的 pd.to_datetime()函数,这是 pandas 的时间处理函数,后面 dt.year 要筛选的结果就是年份等于 2010 年。接下来 cond1 要筛选的条件就是 column4=高级,因为两者是 and 的关系,写完这两句脚本后,还要用 &把这两个条件连接起来。


脚本写完后,点击确定,最后我们看一下 python 脚本执行后的效果,第二列的订单日期显示为 2010 年,订单等级显示为高级,只需写 3 行代码,我们的筛选需求已经实现了:

下篇预告

本文从 Excel 筛选角度介绍简单的应用,下一篇将讲解更复杂的应用,先看看有哪些复杂需求:

·        订单日期筛选 2010 的订单

·        订单等级筛选高级

·        利润金额前 10 的订单

下篇将解决以上问题,敬请关注


用户头像

智分析

关注

人人都是数据分析师 2020.12.31 加入

全新一代云端数据分析平台

评论

发布
暂无评论
懂点EXCEL就行!教你利用Python做数据筛选(上)