1
二進制值我有一個numpy的陣列,其看起來如下:一個熱編碼在numpy的
array([[0],[1],[1]])
我希望它被表示爲一個熱編碼當量:
array([[1,0],[0,1],[0,1]])
任何機構有任何想法?我嘗試使用sklearn.preprocessing.LabelBinarizer,但這只是重新生成輸入。
謝謝。
編輯
按照要求,這裏是使用LabelBinarizer
代碼from sklearn.preprocessing import LabelBinarizer
train_y = np.array([[0],[1],[1]])
lb = LabelBinarizer()
lb.fit(train_y)
label_vecs = lb.transform(train_y)
輸出:
array([[0],[1],[1]])
請注意,它在documentation「二進制目標狀態轉變爲列向量'
你如何使用LabelBinarizer。它應該是正確的。發佈你的代碼和當前輸出(你說它只是重新生成輸入) –
按要求更新 – user1753640
好的。對於指定的輸出('array([[1,0],[0,1],[0,1]])'),您可以使用MultiLabelBinarizer。請在我的其他答案中查看它的用法 - http://stackoverflow.com/a/42392689/3374996。但是 –