Ошибка: неизвестный тип метки: 'unknown' .... значения y_train не совпадают со значениями x_train - PullRequest
0 голосов
/ 07 мая 2019

У меня была эта последовательность кодов

from sklearn.feature_extraction.text import TfidfVectorizer
tfidfconverter = TfidfVectorizer(max_features=900, min_df=5, max_df=0.7, stop_words='english')
X = tfidfconverter.fit_transform(nlistRawDocs)

обратите внимание на верхнюю часть: max_features - 900

from sklearn.model_selection import train_test_split
X_train_S, X_test, y_train_S, y_test = train_test_split(X, trainDF['label'], test_size=0.2, random_state=0)

chi2 = SelectKBest(score_func=chi2, k=500)
X_train = chi2.fit_transform(X_train_S, y_train_S)

с здесь k = 500

моя идея былапросто использовать только 500 лучших выбранных функций из 900 результатов tf-idf

Теперь проблема в значении y_train_S, я считаю, что оно не совпадает с количеством элементов в X_train

так как я буду это делать?

, когда это передается на

classifier = RandomForestClassifier(n_estimators=1000, random_state=0)  
classifier.fit(X_train, y_train_S)  

, он возвращает ошибку:

Неизвестный тип метки: «неизвестный»

Я понимаю, что X_train и y_train не совпадают только с их номером, что я не знаю, чтобы получить обновленное значение y_train_S?

1 Ответ

0 голосов
/ 07 мая 2019

Размещение ваших данных X_train_S через SelectKBest уменьшит количество столбцов с 900 до 500, но не повлияет на число строк в ваших данных, поэтому это не должноt вызывает проблему с несоответствием количества элементов в y_train_S и X_train.

Ошибка, которую вы видите, скорее всего, вызвана this .

...