【发布时间】:2018-07-13 07:19:05
【问题描述】:
我有一个包含两列分类标签数据(NBA 球队名称)的数据集。我想要做的是使用一种热编码来生成一个二进制的一维向量作为代表每个团队的数组。这是我的代码:
from sklearn.preprocessing import MultiLabelBinarizer
one_hot_encoder = MultiLabelBinarizer()
table["Teams"] = one_hot_encoder.fit_transform(table["Teams"])
编码器正常工作,并相应地生成数组。换句话说,
one_hot_encoder.fit_transform(table["Teams"])
正确生成以下内容:
Link to encoder result screenshot
但是,当我尝试将数组存储到列中时,如下:
table["Teams"] = one_hot_encoder.fit_transform(table["Teams"])
似乎没有正确保存。
Link to data frame result screenshot
相反,该列似乎只是获取每个数组的第一个值,而不是存储整个数组。我该如何解决这个问题?
【问题讨论】:
-
您可以粘贴您的示例数据而不是图像吗?
标签: python arrays pandas numpy dataframe