曾无好事来相访,赖尔高文一起予。这篇文章主要讲述# yyds干货盘点 # 盘点一个Pandas中explode()爆炸函数应用实际案例相关的知识,希望能为你提供帮助。
大家好,我是python进阶者。
前言
前几天在学习【麦叔】Python自动化书本中案例的时候,偶然想对数据分列多一些操作,但是遇到了问题,如下图所示。
这个问题竟然在网上找了很久,没有找到合适的,也许是我问问题的没有问到点子上,不过还好比较幸运,在才哥群里有【1px】、【猫药师Kelly】大佬给出了思路和答案。
一、思路
一开始群友想到的是使用Excel进行分列,这个操作我自然熟悉了,只不过列是分割了,但是其他的行数据没有一起跟过来,如果你说大不了复制粘贴呗,也花不了几秒钟,我觉得也是没毛病的,这也确实是一直思路,不死磕也行。
【# yyds干货盘点 # 盘点一个Pandas中explode()爆炸函数应用实际案例】
二、解决方案
针对该问题,其实有两个方法,第一个是【麦叔】书中给出的openpyxl库进行拆解,如下图所示:
第二个是使用pandas中的explode()函数,这里直接给出【1px】大佬答案,如下图所示:
import pandas as pd
df = pd.read_excel(keywords.xlsx)
# [序号, 年份, 来源出版物名称, 索引关键字
df.columns
df.loc[:, [索引关键字]] = df[索引关键字].str.split(";
")# expand=True可以把用分割的内容直接分列
df.head()
df.explode(column=索引关键字)
最后得到预取的效果如下图所示:
上面我只是拿一行数据进行测试,接下来使用多行进行测试看看:
代码运行之后,发现都可以满足要求:
三、总结
我是Python进阶者。本文基于实际过程中遇到的Excel数据拓展分列的问题,使用pandas中的explode()函数顺利完成解答,一个小题目,帮助自己和大家加深对该函数的认识。
最后感谢【麦叔】、【1px】、【猫药师Kelly】大佬给出的思路和解答方法。
这个问题肯定小编相信肯定还有其他的方法的,也欢迎大家在评论区谏言。
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
推荐阅读
- spring cloud alibaba springboot nacos 版本对应
- MySQL误删数据怎么恢复drop/truncate误删恢复
- 游戏开发新手入门教程14:整合到一起,做出小游戏
- #yyds干货盘点# 解决华为机试(成绩排序)
- CentOS8安装Geant4笔记(CentOS8安装Qt5.15.2并测试运行环境)
- 知识竞赛答题小程序的管理后台搭建教程
- 性能测试中Disruptor框架ExceptionHandler使用分享
- 动态内存分配
- 全网最细的教程javaweb项目入门到实战教程(下)