Я хотел бы оцифровать некоторые категориальные данные, чтобы построить тестовую и тестовую матрицы.Как векторизовать категориальные данные
У меня есть 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] (http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.OneHotEncoder.html#sklearn.preprocessing .OneHotEncoder)? Это похоже на то, что вы ищете для меня. – patrick