Я программировал на ML через Scikit-learn от нескольких месяцев. но пришло обновление для объекта предварительной обработки scikit - OneHotEncoder. здесь был параметр categoryorical_features, который теперь изменен на категории, и теперь я не понимаю, как записывать значения
код, который я пишу:
from sklearn.preprocessing import LabelEncoder , OneHotEncoder
le = LabelEncoder()
X[:,0] = le.fit_transform(X[:,0])
ohe = OneHotEncoder(categories = X[:,0].all())
X = ohe.fit_transform(X).toarray()
и показывает эту ошибку
runcell (0, 'C: / Мобильное видео / OPencv / opencv-master / samples / data / untitled2.py') Трассировка (последний последний вызов):
Файл "C: \ Mobile Videos \ OPencv \ opencv-master \ samples \ data \ untitled2.py", строка 25, в X = ohe.fit_transform (X) .toarray ()
Файл "C: \ Users \ Harshit \ Anaconda3 \ lib \ site-packages \ sklearn \ preprocessing_encoders.py", строка 372, в fit_transform return super (). fit_transform (X, y)
Файл "C: \ Users \ Harshit \ Anaconda3 \ lib \ site-packages \ sklearn \ base.py ", строка 571, в fit_transform * вернуть self.fit (X, ** fit_params) .transform (X) *
Файл "C: \ Users \ Harshit \ Anaconda3 \ lib \ site-packages \ sklearn \ preprocessing_encoders.py", строка 347, в соответствии self._fit (X , handle_unknown = self.handle_unknown)
Файл "C: \ Users \ Harshit \ Anaconda3 \ lib \ site-packages \ sklearn \ preprocessing_encoders.py", строка 77, в _fit if len (self.categories)! = N_features:
TypeError: объект типа 'int' не имеет len ()
И если я делаю параметр автоматически, то он превращает весь набор данных в код, как при изменении метки на код
Не могли бы вы помочь мне решить эту проблему ??? ??