首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

盘点一个Pandas中explode()爆炸函数应用实际案例

回复“书籍”即可获赠Python从入门到进阶共10本电子书

莫买沃洲山,时人已知处。

大家好,我是Python进阶者。

前言

前几天在学习【麦叔】Python自动化书本中案例的时候,偶然想对数据分列多一些操作,但是遇到了问题,如下图所示。

上图这个是原始数据,但是现在想要下图这样的效果,怎么破呢?

这个问题竟然在网上找了很久,没有找到合适的,也许是我问问题的没有问到点子上,不过还好比较幸运,在才哥群里有【1px】、【猫药师Kelly】大佬给出了思路和答案。

一、思路

一开始群友想到的是使用Excel进行分列,这个操作我自然熟悉了,只不过列是分割了,但是其他的行数据没有一起跟过来,如果你说大不了复制粘贴呗,也花不了几秒钟,我觉得也是没毛病的,这也确实是一直思路,不死磕也行。

不过不要慌,问题不大,这里给出【1px】大佬给出的解决方法,拍案惊奇!

二、解决方案

针对该问题,其实有两个方法,第一个是【麦叔】书中给出的openpyxl库进行拆解,如下图所示:

第二个是使用pandas中的explode()函数,这里直接给出【1px】大佬答案,如下图所示:

其实关键点就是pandas中的爆炸函数explode(),早在之前我看到过有人用这个,只是一直不知道怎么用,今天在这里算是涨知识了。

最后得到预取的效果如下图所示:

上面我只是拿一行数据进行测试,接下来使用多行进行测试看看:

代码运行之后,发现都可以满足要求:

三、总结

我是Python进阶者。本文基于实际过程中遇到的Excel数据拓展分列的问题,使用pandas中的explode()函数顺利完成解答,一个小题目,帮助自己和大家加深对该函数的认识。

最后感谢【麦叔】、【1px】、【猫药师Kelly】大佬给出的思路和解答方法。

这个问题肯定小编相信肯定还有其他的方法的,也欢迎大家在评论区谏言。

小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

-------------------End-------------------

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OnWZeUkR7T66jZb4fCKwRDxw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券