Zip-аргумент № 2 должен поддерживать итерацию. Почему эта ошибка генерируется при переназначении ndarray? - PullRequest
1 голос
/ 06 октября 2019

Я импортировал набор данных и пытаюсь создать отдельные столбцы категориальных данных. В чем проблема, когда переданный объект корректен?

dataset = pd.read_csv('Data.csv')
X = dataset.iloc[:, :-1].values
Y = dataset.iloc[:, 3].values

from sklearn.preprocessing import OneHotEncoder
from sklearn.compose import ColumnTransformer
ct = ColumnTransformer(['encoder', OneHotEncoder(),[0]], remainder='passthrough')
X = np.array(ct.fit_transform(X), dtype=np.float)

Синтаксическая ошибка отсутствует, но генерируется ошибка.

1 Ответ

0 голосов
/ 06 октября 2019

Проверьте синтаксис для ColumnTransformer. Это может быть довольно сложно ... но быстрое решение состоит в том, чтобы использовать это определение для ct

ct = ColumnTransformer([('encoder', OneHotEncoder(),[0])], remainder='passthrough')

Обратите внимание на кортеж, определенный в списке.

Как видно из документации (https://scikit -learn.org / stable / modules / generate / sklearn.compose.ColumnTransformer.html ), входной аргумент transfomers говорит

Параметры:

преобразователи: список кортежей

Надеюсь, теперь это имеет смысл:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...