我的专栏看起来像这样:df = pd.DataFrame({ 'A':['a','b','a','c','b','d','a'] }) A0 a1 b2 a3 c4 b5 d6 a我需要按字典顺序对列进行排序,然后开始热编码过程,但我必须将该列的最后一个值作为参考(应映射到全零的向量)并将它们替换为“A”列。喜欢:a = [1 0 0] b = [0 1 0]c = [0 0 1]d = [0 0 0]最终结果应该是这样的 A0 [1 0 0] 1 [0 1 0]2 [1 0 0] 3 [0 0 1]4 [0 1 0]5 [0 0 0]6 [1 0 0]
1 回答
GCT1015
TA贡献1827条经验 获得超4个赞
尝试用get_dummies
df['A'] = df.A.str.get_dummies().drop('d', axis=1).to_numpy().tolist()
df
Out[237]:
A
0 [1, 0, 0]
1 [0, 1, 0]
2 [1, 0, 0]
3 [0, 0, 1]
4 [0, 1, 0]
5 [0, 0, 0]
6 [1, 0, 0]
添加回答
举报
0/150
提交
取消