请选择 进入手机版 | 继续访问电脑版
查看: 188|回复: 0

[数据清洗] Smartbi智分析,让Excel轻松接入强大的Python功能

[复制链接]

301

主题

301

帖子

1071

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1071
 楼主| 发表于 2021-9-28 02:03:37 | 显示全部楼层 |阅读模式
  Python很强大,有些复杂的Excel操作,python只要一两个语句就可以了。
  但使用门槛高,要安装环境、模块库。很多时候,我们只想轻量级的使用python功能,有什么简单的办法呢?
  Smartbi智分析提供web python执行环境,加上Excel插件,能够将python数据轻松的取回到Excel。

场景
  多条件组合过滤
  正则表达式过滤
  带计算的过滤


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

1.png

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

2.png


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

3.png

4.png

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

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

5.png

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

6.png

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

7.png

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

8.png

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

9.png

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

10.png

数据输出
  我们再利用ETL的输出功能,对该份报表执行保存和输出,为了方便在EXCEL中对数据源进行调用,这里要输出的数据源类型为数据集。首先在ETL的界面里把“输出到数据集”拉拽到中间的展示区里,并与上面的组件进行相连:

11.png

  然后鼠标右键点击“输出到数据集”,选择“执行到此处”,数据集便会成功保存在智分析的云端上:

12.png

  最后回到EXCEL里,在数据集面板里找到刚刚保存好的数据集,点击该数据集,并用鼠标把数据集中的字段拉拽到EXCEL里:

13.png

  点击工具栏上的刷新,数据便会全部刷新出来,我们可以看到“订单日期”以及“订单等级”这两个字段已经实现了筛选后的效果:

14.png

下篇预告
  本文从 Excel 筛选角度介绍简单的应用,下一篇将讲解更复杂的应用,先看看有哪些复杂需求:
  · 订单日期筛选2010的订单
  · 订单等级筛选高级
  · 利润金额前10的订单

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

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表