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