【发布时间】:2017-06-21 04:28:15
【问题描述】:
我想对一些分类数据进行矢量化,以构建训练和测试矩阵。
我有 85 个城市,我想得到一个有 282520 行的矩阵,每一行都是一个向量
[1 0 0 ..., 0 0 0]
我希望每行有一个向量,其中 1 或 0 取决于城市,因此每个城市都应该是一列:
print(df['city'])
0 METROPOLITANA DE SANTIAGO
1 METROPOLITANA DE SANTIAGO
2 METROPOLITANA DE SANTIAGO
3 METROPOLITANA DE SANTIAGO
4 COQUIMBO
5 SANTIAGO
6 SANTIAGO
7 METROPOLITANA DE SANTIAGO
8 METROPOLITANA DE SANTIAGO
9 METROPOLITANA DE SANTIAGO
10 BIO BIO
11 COQUIMBO
... ...
282520 METROPOLITANA DE SANTIAGO
Name: city, dtype: object
这是我尝试过的:
from sklearn import preprocessing
list_city = getList(df,'city')
le = preprocessing.LabelEncoder()
le.fit(list_city)
print(le.transform(['AISEN']))
print(le.transform(['TARAPACA']))
print(le.transform(['AISEN DEL GENERAL CARLOS IBANEZ DEL CAMP']))
我得到以下输出:
[0]
[63]
[1]
问题是我刚刚得到城市的索引,我正在寻找如何对数据进行矢量化的建议。
【问题讨论】:
-
你确定你不是在寻找OneHotEncoder吗?这听起来更像是你在寻找我。
标签: python scikit-learn sklearn-pandas