盘点一个Pandas中explode()爆炸函数应用实际案例
回复“书籍”即可获赠Python从入门到进阶共10本电子书
今
日
鸡
汤
莫买沃洲山,时人已知处。大家好,我是Python进阶者。
前言前几天在学习【麦叔】Python自动化书本中案例的时候,偶然想对数据分列多一些操作,但是遇到了问题,如下图所示。
上图这个是原始数据,但是现在想要下图这样的效果,怎么破呢?
这个问题竟然在网上找了很久,没有找到合适的,也许是我问问题的没有问到点子上,不过还好比较幸运,在才哥群里有【1px】、【猫药师Kelly】大佬给出了思路和答案。
一、思路一开始群友想到的是使用Excel进行分列,这个操作我自然熟悉了,只不过列是分割了,但是其他的行数据没有一起跟过来,如果你说大不了复制粘贴呗,也花不了几秒钟,我觉得也是没毛病的,这也确实是一直思路,不死磕也行。
不过不要慌,问题不大,这里给出【1px】大佬给出的解决方法,拍案惊奇!
二、解决方案针对该问题,其实有两个方法,第一个是【麦叔】书中给出的openpyxl库进行拆解,如下图所示:
第二个是使用pandas中的explode()函数,这里直接给出【1px】大佬答案,如下图所示:
其实关键点就是pandas中的爆炸函数explode(),早在之前我看到过有人用这个,只是一直不知道怎么用,今天在这里算是涨知识了。
importpandasaspddf=pd.read_excel("keywords.xlsx")#["序号","年份","来源出版物名称","索引关键字"df.columnsdf.loc[:,["索引关键字"]]=df["索引关键字"].str.split(";")#expand=True可以把用分割的内容直接分列df.head()df.explode(column="索引关键字")
最后得到预取的效果如下图所示:
上面我只是拿一行数据进行测试,接下来使用多行进行测试看看:
代码运行之后,发现都可以满足要求:
三、总结我是Python进阶者。本文基于实际过程中遇到的Excel数据拓展分列的问题,使用pandas中的explode()函数顺利完成解答,一个小题目,帮助自己和大家加深对该函数的认识。
最后感谢【麦叔】、【1px】、【猫药师Kelly】大佬给出的思路和解答方法。
这个问题肯定小编相信肯定还有其他的方法的,也欢迎大家在评论区谏言。
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
-------------------End-------------------
往期精彩文章推荐:
手把手教你JS逆向搞定字体反爬并获取某招聘网站信息
如何用Python下载百度指数的数据
分享一次实用的爬虫经验
补充篇:盘点6种使用Python批量合并同一文件夹内所有子文件夹下的Excel文件内所有Sheet数据
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
/今日留言主题/
随便说一两句吧~~
相关阅读
-
世界热推荐:今晚7:00直播丨下一个突破...
今晚19:00,Cocos视频号直播马上点击【预约】啦↓↓↓在运营了三年... -
NFT周刊|Magic Eden宣布支持Polygon网...
Block-986在NFT这样的市场,每周都会有相当多项目起起伏伏。在过去... -
环球今亮点!头条观察 | DeFi的兴衰与...
在比特币得到机构关注之后,许多财务专家预测世界将因为加密货币的... -
重新审视合作,体育Crypto的可靠关系才能双赢
Block-987即使在体育Crypto领域,人们的目光仍然集中在FTX上。随着... -
简讯:前端单元测试,更进一步
前端测试@2022如果从2014年Jest的第一个版本发布开始计算,前端开发... -
焦点热讯:刘强东这波操作秀
近日,刘强东发布京东全员信,信中提到:自2023年1月1日起,逐步为...