pandas爆炸函数使用

如题所述

第1个回答  2022-06-20

前段时间部门有位大数据开发的同事离职了,在他和其他开发的同事进行工作项目交接的时候,我去旁听了下,因为涉及到一些公司业务逻辑的问题。当讲到某个项目的时候,他谈到:

当时他举了一个简单的例子来说明爆炸函数的功能,我当场就记下了这个函数名称: 爆炸函数 。Hive在我的工作中使用的并不多,于是我在想: Pandas能够实现这个功能吗

爆炸函数到底实现的是什么需求呢?我回忆一下当时的例子:

现在有一份数据,包含订单编号和订单中商品价格(价格每个订单3个商品),使用hive中的爆炸函数之后变成如下如所示的样子:相当于是实现了 列转成行 的功能。这样后续就能进行各种聚合操作。

Hive中实现爆炸功能有两个函数,可自行搜索了解:

碰巧最近有一个需求就用到爆炸函数的功能,不过是用pandas实现的。在下面表格的左边部分是每个订单的销售记录,包含销售员、跟单员、结单员, 他们三者不一定是同一个人

现在需要统计每个员工的销售业绩。 销售业绩也就是指员工参与了多少订单 。统计每个员工的销售业绩:

爆炸函数到底实现的是什么功能呢?右边就是我们想要的结果:

1、在pandas模拟了一份数据如下:

2、生成一个新字段: 员工

3、实施爆炸功能,使用的是pandas中的 explode 函数,得到新数据:可以看到每个订单号会多次出现

4、统计结果

这样根据不同的字段,比如 员工、销售员、跟单员 等就能统计不同的业绩

pandas中文叫做熊猫,它是Python的核心数据处理和数据分析的第三方库,它拥有快速、灵活、明确的数据结构。

Pandas是一个强大的分析结构化数据的工具集;它的使用基础是Numpy(另一个Python库,提供高性能的矩阵运算),能够用于数据挖掘和数据分析,同时也提供数据清洗功能。

pandas的具体使用以后会形成连载系列,敬请期待!

本文结语: 拥抱pandas,告别Excel

相似回答