Pandas中的get_dummy()函數(shù)案例實(shí)戰(zhàn)分享
回復(fù)“資源”即可獲贈(zèng)Python學(xué)習(xí)資料
大家好,我是皮皮。
一、前言
前幾天在Python最強(qiáng)王者交流群【W(wǎng)YM】問(wèn)了一個(gè)Pandas處理的問(wèn)題,提問(wèn)截圖如下:

數(shù)據(jù)截圖如下:


可能一開(kāi)始理解起來(lái)還是有點(diǎn)困難的,需要多讀一兩遍才可以體會(huì)到那個(gè)意思。
二、實(shí)現(xiàn)過(guò)程
這里【鄭煜哲·Xiaopang】給了一個(gè)思路,如下所示:

代碼如下:
import pandas as pd
def my_func(x):
res = pd.Series(0, columns=labels)
if "x" in labels:
res["x"] = 1
elif "y" in labels:
res["y"] = 1
.....
return x.append(res)
df.apply(my_func, axis=0)
思路是沒(méi)問(wèn)題的,只不過(guò)實(shí)現(xiàn)起來(lái)還是沒(méi)那么順利。后來(lái)【貓藥師Kelly】給了一個(gè)答案,如下所示:

代碼如下:
df['tblTags'] = df['tblTags'].str.extract('\[(.*?)\]')
df['tblTags'].str.get_dummies(sep=', ')
順利地解決了粉絲的問(wèn)題。

不過(guò)他自己的原始數(shù)據(jù)需要再處理下,不然的話,會(huì)報(bào)錯(cuò)。

如果DataFrame的某一列中含有k個(gè)不同的值,則可以派生出一個(gè)k列矩陣或DataFrame(其值全為1和0)。pandas有一個(gè)get_dummies()函數(shù)可以實(shí)現(xiàn)該功能。
他后面還咨詢(xún)了另外一個(gè)問(wèn)題。

也得到就完美地解答。

三、總結(jié)
大家好,我是皮皮。這篇文章主要盤(pán)點(diǎn)了一個(gè)Python基礎(chǔ)的問(wèn)題,文中針對(duì)該問(wèn)題,給出了具體的解析和代碼實(shí)現(xiàn),幫助粉絲順利解決了問(wèn)題。
最后感謝粉絲【W(wǎng)YM】提問(wèn),感謝【鄭煜哲·Xiaopang】、【貓藥師Kelly】給出的思路和代碼解析,感謝【dcpeng】等人參與學(xué)習(xí)交流。
大家在學(xué)習(xí)過(guò)程中如果有遇到問(wèn)題,歡迎隨時(shí)聯(lián)系我解決(我的微信:pdcfighting),應(yīng)粉絲要求,我創(chuàng)建了一些高質(zhì)量的Python付費(fèi)學(xué)習(xí)交流群,歡迎大家加入我的Python學(xué)習(xí)交流群!

有遇到任何問(wèn)題,歡迎加我好友,我拉你進(jìn)Python學(xué)習(xí)交流群共同探討學(xué)習(xí)。
------------------- End -------------------
往期精彩文章推薦:
盤(pán)點(diǎn)Python網(wǎng)絡(luò)爬蟲(chóng)入門(mén)常見(jiàn)的一個(gè)問(wèn)題
盤(pán)點(diǎn)一個(gè)使用Python合并excel表格過(guò)程中遇到的一個(gè)小問(wèn)題

歡迎大家點(diǎn)贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持
想加入Python學(xué)習(xí)群請(qǐng)?jiān)诤笈_(tái)回復(fù)【入群】
萬(wàn)水千山總是情,點(diǎn)個(gè)【在看】行不行
