盤點一個Pandas實戰需求的問題

大家好,我是Python進階者。

一、前言

前幾天在Python最強王者交流羣【wen】問了一個Pandas解決實際需求的實戰問題。問題如下:

請教:代碼的目的爲自動填充產品名字,有多個銷售數據的表格,如例子,銷售數據表格中的的產品名字一列爲空,我把銷售數據表格與產品信息表格進行根據產品IP進行合併獲得產品名字,但有些數據的產品號一列爲空,可以根據產品ID進行匹配,請問怎麼設置邏輯,當產品號爲空時根據產品IP進行匹配呢?

image.png

二、實現過程

【瑜亮老師】指出:產品號爲空就用id其實就是用id列填充產品號列的空值。

【wen】:大部分數據都有產品號,今天發現有些數據匹配不了,原來產品號缺失。

這裏【瑜亮老師】給出了具體的代碼,如下所示:

df1 = df1.merge(df2[['產品號', '產品名稱']], on='產品號', how='left')
df1.loc[df1['產品號'].isnull(), '產品名稱'] = df1.loc[df1['產品號'].isnull(), 'ID'].map(lambda x: df2[df2['ID'] == x]['產品名稱'].values[0])

順利地解決了粉絲的問題。

如果你也有類似這種Python相關的小問題,歡迎隨時來交流羣學習交流哦,有問必答!

三、總結

大家好,我是Python進階者。這篇文章主要盤點了一個Pandas解決實際需求的問題,文中針對該問題,給出了具體的解析和代碼實現,幫助粉絲順利解決了問題。

最後感謝粉絲【wen】提出的問題,感謝【瑜亮老師】給出的思路,感謝【莫生氣】等人蔘與學習交流。

【提問補充】溫馨提示,大家在羣裏提問的時候。可以注意下面幾點:如果涉及到大文件數據,可以數據脫敏後,發點demo數據來(小文件的意思),然後貼點代碼(可以複製的那種),記得發報錯截圖(截全)。代碼不多的話,直接發代碼文字即可,代碼超過50行這樣的話,發個.py文件就行。

image.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章