Похоже, у вас есть опечатка в столбце Sex
, одно из значений выглядит как ['female' 'male']
вместо чего-то вроде ['female', 'male']
(обратите внимание, что в первом случае два значения не разделены запятая, и поэтому не читаются как отдельные элементы). Убедитесь, что вы исправили эту опечатку, прежде чем применить train_test_split
или разбить данные, как бы вы это ни делали. Например, вы можете посмотреть на df.Sex.unique()
(где df
- ваш набор данных) и убедиться, что у вас есть только ожидаемые значения ['male', 'female']
Основная ошибка заключается в том, что LabelEncoder
находит значение в вашем X_test
, которое не найдено в вашем X_train
, поэтому оно не знает, как его преобразовать (поскольку вы помещаете LabelEncoder
только на значения найдены в X_train
). Это может произойти, только если у вас есть очень редкие значения в вашем наборе данных (в этом случае вы можете пересмотреть свои данные или обработать их соответствующим образом), но , если , вы хотите полностью избежать этого одним из приемлемых вариантов будет подгонка LabelEncoder
до , когда вы разделите данные на train
и test