我有一个包含15000个数组的列。请查看15000中的2个此类记录的样本。我想为Genres_relevant下的值创建虚拟对象。
user Genres_relevant
1 [2.0]
2 [3.0,2.0,1.0]
码:
from sklearn.preprocessing import MultiLabelBinarizer
df=pd.DataFrame(users_list['Genres_relevant'])
mlb = MultiLabelBinarizer()
pd.DataFrame(mlb.fit_transform(df),columns=mlb.classes_, index=df.index)
预期产出
1.0 2.0 3.0
1 0 1 0
2 1 1 1
错误:传递值的形状为(12,1),索引意味着(12,15000)
pd.DataFrame(mlb.fit_transform(df['Genres_relevant']), columns=mlb.classes_,
index=df.index)
在拟合时,不要传入完整的数据帧,而是传入列。