回复“书籍”即可获赠Python从入门到进阶共10本电子书
今
日
【资料图】
鸡
汤
剑阁峥嵘而崔嵬,一夫当关,万夫莫开。大家好,我是皮皮。
一、前言前几天在Python最强王者群【wen】问了一个pandas数据合并处理的问题,一起来看看吧。他的原始数据如下所示:
然后预期的结果如下所示:
二、实现过程这里【瑜亮老师】给了一个指导如下:原始数据中包含所有所需的信息,但是因为源系统导出的格式问题,有些数据被分配到了合并行中,并且每个单独的表中都是统一格式。
源数据中"商品", "单价", "支付方式", "销售地", "销量"是已经处理好的数据,不需要单独处理。需要获取的信息是"平台", "商户", "账号",这三个均在合并行中,群友的建议都是使用re正则表达式获取。
获取到上面数据后,还需要删掉多余的行。仔细观察原始表格我们可以发现:每个单独表格是由一个平台、商户、账号所查询的,且所需平台、商户、账号数据分布在合并行中,而这些合并行在被pandas读取后会形成只有第一列有数值,其他列为NaN的情况。
处理过后的格式情况如下:
这就给了我们去掉这些合并行的简便方法:dropna。
而用正则获取到的平台、商户、账号只有一行,需要对数据进行向下填充空值。而pandas中fillna(method="ffill")即可实现使用前值去填充下面空值的需求。最后,瑜亮老师出手,实现需求,代码如下:
importpandasaspd
#读取Excel文件
df=pd.read_excel("20230812.xlsx",header=None)
#去除重复行
df=df.drop_duplicates(ignore_index=False).reset_index(drop=True)
#根据正则表达式获取“账号”,“平台”,“商户”
df["账号"]=df[0].str.extract(r"账号:(\d+)",expand=False).fillna(method="ffill")
df["平台"]=df[0].str.extract(r"平台:(.*?),",expand=False).fillna(method="ffill")
df["商户"]=df[0].str.extract(r"商户:(.*?),",expand=False).fillna(method="ffill")
#去除含有空值的行(即excel中所有的合并行
df=df.dropna().reset_index(drop=True)
#设置df的列名
df.columns=["商品","单价","支付方式","销售地","销量","账号","平台","商户"]
df=df[["平台","商户","账号","商品","单价","支付方式","销售地","销量"]]
print(df)
代码运行后的结果如下:
完美实现群友的需求!
三、总结大家好,我是皮皮。这篇文章主要盘点了一个Pandas数据合并处理问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。
最后感谢粉丝【wen】提问,感谢【瑜亮老师】给出的思路和代码解析,感谢【莫生气】等人参与学习交流。
【提问补充】温馨提示,大家在群里提问的时候。可以注意下面几点:如果涉及到大文件数据,可以数据脱敏后,发点demo数据来(小文件的意思),然后贴点代码(可以复制的那种),记得发报错截图(截全)。代码不多的话,直接发代码文字即可,代码超过50行这样的话,发个.py文件就行。
大家在学习过程中如果有遇到问题,欢迎随时联系我解决(我的微信:pdcfighting1),应粉丝要求,我创建了一些ChatGPT机器人交流群和高质量的Python付费学习交流群和付费接单群,欢迎大家加入我的Python学习交流群和接单群!
小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。
-------------------End-------------------
往期精彩文章推荐:
if a and b and c and d:这种代码有优雅的写法吗?
Pycharm和Python到底啥关系?
都说chatGPT编程怎么怎么厉害,今天试了一下,有个静态网页,chatGPT居然没搞定?
站不住就准备加仓,这个pandas语句该咋写?
欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持
想加入Python学习群请在后台回复【入群】
万水千山总是情,点个【在看】行不行
/今日留言主题/
随便说一两句吧~~
标签:
-
Pandas实战——灵活使用pandas基础知识轻松处理不规则数据
点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Pyth
-
《孤注一掷》:以纪录片方式展示犯罪故事
舜网文娱频道发布娱乐八卦新闻和娱乐资讯。
-
天津有正规植发医院吗 答案是肯定的 具体名单介绍
人们为了美都会去选择染发和烫发,而大家不知道的是,长时间的染发和烫
-
苏师傅为什么一直在输出片面的试车观点?
是不是片面各有各的看法,至少在我看过的车评人和车主访谈中绝对是片面
-
铁面生的真实身份是吴家祖先(铁面生的真实身份)
导读1、鲁王的军师。本文到此讲解完毕了,希望对大家有帮助。免责声明
-
本周盘点(8.14-8.18):开创电气周涨5.06%,主力资金合计净流入958.56万元
截至2023年8月18日收盘,开创电气(301448)报收于41 3元,较上周的39
-
「快讯」金钼股份:上半年净利润同比增长124.49% 业绩再创历史同期最好水平
8月18日晚间,金钼股份(601958 SH)发布2023年半年度报告。今年上半年
-
新宙邦: 中信证券股份有限公司关于深圳新宙邦科技股份有限公司为子公司提供担保的核查意见
新宙邦:中信证券股份有限公司关于深圳新宙邦科技股份有限公司为子公司
-
舍得酒业(600702.SH):拟回购1.85亿元-3.7亿元公司股份
格隆汇8月18日丨舍得酒业(600702)(600702 SH)公布,拟回购股份资金总额
-
MINI紫夜出逃特别版上市 售价24.03万元起
中国网汽车8月18日讯日前,记者从官方获悉,MINI紫夜出逃特别版车型正
-
销售改装电动自行车 一商家被立案
近日,海沧市场监督管理所持续开展电动自行车市场经营秩序整治,严厉打
-
济南趵突泉:泉水清透 引客如潮
济南趵突泉:泉水清透引客如潮-新华网发(田希霞摄)泉水翻滚,源源不
-
青岛金王8月18日盘中涨幅达5%
以下是青岛金王在北京时间8月18日13:03分盘口异动快照:8月18日,青岛
-
玻利维亚发生一起交通事故 已致20死38伤
玻利维亚中部科恰班巴省警方8月17日发布通报称,前一天在该省洛科塔尔
-
三峰环境:上半年净利润6.33亿元,同比增长7.34%
三峰环境公布2023年半年度报告,报告期实现营业收入29 8亿元,同比增长
-
钟奎华║2019年为曾同学微信朋友圈图文题诗集(上)
寒假游避暑山庄,冰雪舞动人靓影,南方仔慕名而至,景致美如此痴情
-
600亿巨头曝上市22年来最大亏损
【600亿巨头曝上市22年来最大亏损】2023年上半年,用友网络净亏损额为8
-
余承东微博曝光问界新M7大五座,五个亿重金升级不玩虚的
8月17日,华为常务董事、终端BGCEO、智能汽车解决方案CEO余承东在微博
-
小米手机qq共享屏幕模糊怎么调 屏幕模糊怎么调
1、电脑显示器屏幕看起来有些模糊,的解决方法如下:1打开控制面板点击
-
世间万物相生相克,那么病毒的天敌是什么?为何没有听说过?
病毒可以进入宿主细胞,并在其内部进行复制和繁殖,这使得病毒在宿主细
-
初中毕业后拜师走上歪道,“制毒师”潜逃11年后落网
极目新闻记者梁传松通讯员熊静怡梁婷婷“潜逃的这11年间,每一天过得都
-
成都银行总资产首破万亿
成都银行总资产首破万亿---人民网北京8月17日电16日,成都银行公布了20
-
Chris:Uzi不缺钱复出是为了梦想 一个想赢的人不应该被黑
近日前皇族、iG教练Chris在直播里为EDG老将Uzi与弹幕对线,并表达了自
-
绝味鸭脖荣获2023\\"好食榜\\"年度人气卤味
8月10日,上海报业集团丨界面新闻成功举办第六届 "新消费盛典
-
四川设立河湖安全保护综合执法违法问题公众举报电话
设立该举报电话,旨在加大我省河湖领域执法力度。
-
广西南宁隆安县:落实稳岗就业 铺就“幸福之路”
——隆安县多措并举为脱贫人口提供就业岗位(副题)南宁日报记者覃雨轩
-
纵横股份在北京参设新公司,经营范围含AI软件开发
天眼查显示,近日,北京中能纵横无人机科技有限公司成立,法定代表人为
-
便宜买手机!Nothing Phone 2a曝光 价格或将更低
据报道,科技公司Nothing即将推出一款新型手机,型号为“AIN142”,并
-
帮企业点亮科技之树!专利代理师职业持续走热
【阅读提示】专利代理师,代理他人进行专利申请和办理其他专利事务的人
-
晨读|北北:朋友圈旅游
有种旅游不用出门,朋友圈的旅游个性化十足。