Я пытаюсь создать модель для набора данных load_hobbies из yellowbrick;Я написал следующий код для соответствия модели после того, как разделил данные на обучающие и тестовые наборы данных. Однако я получил ошибку ValueError: Ожидаемый 2D-массив, вместо него был получен 1D-массив. Измените ваши данные, используя array.reshape (-1, 1), если ваши данные имеют одну функцию, или array.reshape (1, -1), если он содержит один образец. Я не знаю почему. кто-нибудь может помочь, пожалуйста? Вот код:
from sklearn.naive_bayes import GaussianNB
from sklearn.preprocessing import LabelEncoder
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.model_selection import train_test_split as tts
#corpus = load_hobbies()
#X = TfidfVectorizer().fit_transform(corpus.data)
#y = LabelEncoder().fit_transform(corpus.target)
#
#X_train, X_test, y_train, y_test = tts(X, y, test_size=0.2)
#
#model = MultinomialNB().fit(X_train, y_train)
#model.score(X_test, y_test)
corpus = load_hobbies()
X = corpus.data
y = corpus.target
#
X_train, X_test, y_train, y_test = tts(X, y, test_size=0.2)
#
model = GaussianNB()
model.fit(X_train, y_train)```