您的位置:首頁 >聚焦 >

快報(bào):盤點(diǎn)一個(gè)Python處理Excel兩列單元格中有類似字符串就返回1,沒有就返回0的操作

2022-11-08 18:13:14    來源:程序員客棧
點(diǎn)擊上方“Python爬蟲與數(shù)據(jù)挖掘”,進(jìn)行關(guān)注

回復(fù)“書籍”即可獲贈(zèng)Python從入門到進(jìn)階共10本電子書


(資料圖片僅供參考)

失之毫厘,謬以千里。

大家好,我是Python進(jìn)階者。

一、前言

前幾天在才哥的Python交流群遇到了一個(gè)粉絲提問,提問截圖如下:

覺得還挺有意思的,都是Pandas基礎(chǔ)操作,這里拿出來給大家一起分享下。

二、實(shí)現(xiàn)過程

這里【dcpeng】給了一個(gè)代碼,如下所示:

importpandasaspddf=pd.read_excel("test.xlsx")df["標(biāo)記列"]=df[["字符串1","字符串2"]].apply(lambdax:len(set(x["字符串1"])&set(x["字符串2"]))>0,axis=1)print(df)

不過得到的是True和False,如下圖所示:

這里稍微優(yōu)化了下,直接得到0,1,三個(gè)方法,一起學(xué)習(xí)下。

【方法一】代碼如下:

importpandasaspddf=pd.read_excel("test.xlsx")df["標(biāo)記列"]=df[["字符串1","字符串2"]].apply(lambdax:len(set(x["字符串1"])&set(x["字符串2"]))>0,axis=1)bool_map={True:1,False:0}df["new_標(biāo)記列"]=df["標(biāo)記列"].map(bool_map)print(df)

可以得到如下的結(jié)果:

【方法二】代碼如下:

importpandasaspddf=pd.read_excel("test.xlsx")df["標(biāo)記列"]=df[["字符串1","字符串2"]].apply(lambdax:1iflen(set(x["字符串1"])&set(x["字符串2"]))>0else0,axis=1)

同樣可以得到相同的結(jié)果。

【方法三】代碼如下:

importpandasaspddf=pd.read_excel("test.xlsx")df["標(biāo)記列"]=df.apply(lambdax:1iflen(set(x["字符串1"])&set(x["字符串2"]))>0else0,axis=1)print(df)

后來發(fā)現(xiàn)是可以繼續(xù)優(yōu)化的,所以就有了上述代碼。

三、總結(jié)

大家好,我是皮皮。這篇文章主要盤點(diǎn)了一個(gè)Python處理Excel表格數(shù)據(jù)的問題,文中針對(duì)該問題,給出了具體的解析和代碼實(shí)現(xiàn),幫助粉絲順利解決了問題。

最后感謝粉絲提問,感謝【dcpeng】給出的思路和代碼解析,感謝【馮誠(chéng)】等人參與學(xué)習(xí)交流。

大家在學(xué)習(xí)過程中如果有遇到問題,歡迎隨時(shí)聯(lián)系我解決(我的微信:pdcfighting),應(yīng)粉絲要求,我創(chuàng)建了一些高質(zhì)量的Python付費(fèi)學(xué)習(xí)交流群和付費(fèi)接單群,歡迎大家加入我的Python學(xué)習(xí)交流群和接單群!

小伙伴們,快快用實(shí)踐一下吧!如果在學(xué)習(xí)過程中,有遇到任何問題,歡迎加我好友,我拉你進(jìn)Python學(xué)習(xí)交流群共同探討學(xué)習(xí)。

-------------------End-------------------

往期精彩文章推薦:

盤點(diǎn)一個(gè)網(wǎng)絡(luò)爬蟲POST請(qǐng)求參數(shù)構(gòu)造的問題

盤點(diǎn)一個(gè)Python基礎(chǔ)中循環(huán)判斷遇到一個(gè)小問題

重裝pycharm和Python環(huán)境以后,以前的文件selenium獲取不到元素了?

不使用內(nèi)置函數(shù)的情況下,如何使用Python實(shí)現(xiàn)求平均值、最大值和最小值?

歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持

想加入Python學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群】

萬水千山總是情,點(diǎn)個(gè)【在看】行不行

/今日留言主題/

隨便說一兩句吧~~

關(guān)鍵詞: 學(xué)習(xí)交流 謬以千里 有意思的

相關(guān)閱讀