盤點一個Pandas實戰(zhàn)需求的問題
回復(fù)“ 書籍 ”即可獲贈Python從入門到進(jìn)階共10本電子書
今
日
雞
湯
舉賢任能,不時日而事利。大家好,我是Python進(jìn)階者。
一、前言
前幾天在Python最強(qiáng)王者交流群【wen】問了一個Pandas解決實際需求的實戰(zhàn)問題。問題如下:
請教:代碼的目的為自動填充產(chǎn)品名字,有多個銷售數(shù)據(jù)的表格,如例子,銷售數(shù)據(jù)表格中的的產(chǎn)品名字一列為空,我把銷售數(shù)據(jù)表格與產(chǎn)品信息表格進(jìn)行根據(jù)產(chǎn)品IP進(jìn)行合并獲得產(chǎn)品名字,但有些數(shù)據(jù)的產(chǎn)品號一列為空,可以根據(jù)產(chǎn)品ID進(jìn)行匹配,請問怎么設(shè)置邏輯,當(dāng)產(chǎn)品號為空時根據(jù)產(chǎn)品IP進(jìn)行匹配呢?
二、實現(xiàn)過程
【瑜亮老師】指出:產(chǎn)品號為空就用id其實就是用id列填充產(chǎn)品號列的空值。
【wen】:大部分?jǐn)?shù)據(jù)都有產(chǎn)品號,今天發(fā)現(xiàn)有些數(shù)據(jù)匹配不了,原來產(chǎn)品號缺失。
這里【瑜亮老師】給出了具體的代碼,如下所示:
df1 = df1.merge(df2[['產(chǎn)品號', '產(chǎn)品名稱']], on='產(chǎn)品號', how='left')
df1.loc[df1['產(chǎn)品號'].isnull(), '產(chǎn)品名稱'] = df1.loc[df1['產(chǎn)品號'].isnull(), 'ID'].map(lambda x: df2[df2['ID'] == x]['產(chǎn)品名稱'].values[0])
順利地解決了粉絲的問題。
如果你也有類似這種Python相關(guān)的小問題,歡迎隨時來交流群學(xué)習(xí)交流哦,有問必答!
三、總結(jié)
大家好,我是Python進(jìn)階者。這篇文章主要盤點了一個Pandas解決實際需求的問題,文中針對該問題,給出了具體的解析和代碼實現(xiàn),幫助粉絲順利解決了問題。
最后感謝粉絲【wen】提出的問題,感謝【瑜亮老師】給出的思路,感謝【莫生氣】等人參與學(xué)習(xí)交流。
【提問補(bǔ)充】溫馨提示,大家在群里提問的時候。可以注意下面幾點:如果涉及到大文件數(shù)據(jù),可以數(shù)據(jù)脫敏后,發(fā)點demo數(shù)據(jù)來(小文件的意思),然后貼點代碼(可以復(fù)制的那種),記得發(fā)報錯截圖(截全)。代碼不多的話,直接發(fā)代碼文字即可,代碼超過50行這樣的話,發(fā)個.py文件就行。
大家在學(xué)習(xí)過程中如果有遇到問題,歡迎隨時聯(lián)系我解決(Python進(jìn)階者微信:2584914241),應(yīng)粉絲要求,我創(chuàng)建了一些ChatGPT機(jī)器人交流群和高質(zhì)量的Python付費學(xué)習(xí)交流群和付費接單群,歡迎大家加入我的Python學(xué)習(xí)交流群和接單群!
小伙伴們,快快用實踐一下吧!如果在學(xué)習(xí)過程中,有遇到任何問題,歡迎加我好友,我拉你進(jìn)Python學(xué)習(xí)交流群共同探討學(xué)習(xí)。
------------------- End -------------------
往期精彩文章推薦:
歡迎大家點贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Python學(xué)習(xí)群請在后臺回復(fù)【 入群 】
萬水千山總是情,點個【 在看 】行不行
/今日留言主題/
隨便說一兩句吧~~
