我有一个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