我有一個Python熊貓數據框類似如下:Python熊貓:如何從列的列創建二進制矩陣?
1
0 a, b
1 c
2 d
3 e
a, b
爲代表的用戶列表的字符串特徵
我怎麼能轉換成用戶的功能,如下面的二元矩陣這樣的:
a b c d e
0 1 1 0 0 0
1 0 0 1 0 0
2 0 0 0 1 0
3 0 0 0 0 1
我看到了類似的問題,但Creating boolean matrix from one column with pandas列不包含在列表中的條目。
我曾嘗試這些方法,有沒有辦法合併兩個:
pd.get_dummies()
pd.get_dummies(df[1])
a, b c d e
0 1 0 0 0
1 0 1 0 0
2 0 0 1 0
3 0 0 0 1
df[1].apply(lambda x: pd.Series(x.split()))
1
0 a, b
1 c
2 d
3 e
也有興趣在不同的方法來創建這種類型的二元矩陣!
任何幫助表示讚賞!
感謝
有沒有必要鏈,使許多操作在一起只是爲了讓一個班輪.. – DSM
@jezrael這工作了魅力,非常感謝! – jfive
有趣的是,對'10,000'行工作,但iPython內核死在'100,000'行上,將嘗試以10,000和垂直連接的塊進行計算。 – jfive