Pandas如何實現(xiàn)vlookup功能?
回復(fù)“資源”即可獲贈Python學(xué)習(xí)資料
大家好,我是皮皮。
一、前言
前幾天在Python黃金交流群【Edward】問了一道Pandas處理的問題,如下圖所示。

二、實現(xiàn)過程
方法一
這里【格格物 ? ??????】給出了一個思路和代碼。具體思路如下圖所示:

代碼如下圖所示:

下圖是運行結(jié)果:

可以解決粉絲的問題。
方法二
后來【月神】也給了一個方法,代碼如下所示:

##?merge?用法
regon_code?=?'3202'
dfb['大類編碼']?=?regon_code?+?dfb['大類編碼']
dfb['小類編碼']?=?regon_code?+?dfb['小類編碼']
#?這里已經(jīng)merge好了
dfn?=?pd.merge(dfn,?dfb,?how='inner').rename(columns={'大類編碼':?'項目大類編碼','小類編碼':?'項目小類編碼'})
dfn.insert(0,?'項目大類編碼',?dfn.pop('項目大類編碼'))
dfn.insert(2,?'項目小類編碼',?dfn.pop('項目小類編碼'))
print(dfn)
方法三
后來【月神】還給了一個map方法,代碼如下所示:
#?map?用法
regon_code?=?'3202'
dfb['大類編碼']?=?regon_code?+?dfb['大類編碼']
dfb['小類編碼']?=?regon_code?+?dfb['小類編碼']
#?map需要對映射表做去重處理
dfn.insert(0,?'項目大類編碼',?dfn['項目大類'].map(dfb.set_index('項目大類')['大類編碼'].drop_duplicates()))
dfn.insert(2,?'項目小類編碼',?dfn['項目小類'].map(dfb.set_index('項目小類')['小類編碼'].drop_duplicates()))
print(dfn)
【月神】對Pandas的掌握可謂出神入化,令人望塵莫及。

后來【Edward】拿著這兩份代碼,順利的解決了他的需求!

三、總結(jié)
大家好,我是皮皮。這篇文章主要盤點了一個使用Pandas如何實現(xiàn)vlookup功能的問題,文中針對該問題給出了具體的解析和代碼演示,一共三個方法,幫助粉絲順利解決了問題。
最后感謝粉絲【Edward】提問,感謝【月神】、【格格物 ? ??????】給出的代碼和具體解析,感謝【瑜亮老師】、【貓藥師Kelly】、【dcpeng】等人參與學(xué)習(xí)交流。
小伙伴們,快快用實踐一下吧!如果在學(xué)習(xí)過程中,有遇到任何問題,歡迎加我好友,我拉你進(jìn)Python學(xué)習(xí)交流群共同探討學(xué)習(xí)。
-------------------?End?-------------------
往期精彩文章推薦:

歡迎大家點贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Python學(xué)習(xí)群請在后臺回復(fù)【入群】
萬水千山總是情,點個【在看】行不行
評論
圖片
表情
