Я пытаюсь предсказать экономические циклы с использованием гауссова наивного байеса «Классификатор».ТипError: fit() missing 1 обязательный позиционный аргумент: 'y'
данные (вход X):
SPY Interest Rate Unemployment Employment CPI
Date
1997-01-02 56.05 7.82 9.7 3399.9 159.100
1997-02-03 56.58 7.65 9.8 3402.8 159.600
1997-03-03 54.09 7.90 9.9 3414.7 160.000
мишень (выход Y):
Economy
0 Expansion
1 Expansion
2 Expansion
3 Expansion
Ниже мой код:
from sklearn.naive_bayes import GaussianNB
from sklearn import metrics
from sklearn.cross_validation import train_test_split
X = data
Y = target
model = GaussianNB
X_train, X_test, Y_train, Y_test = train_test_split(X,Y)
model.fit(X_train, Y_train)
Ниже Ошибка:
TypeError Traceback (most recent call last)
<ipython-input-132-b0975752a19f> in <module>()
6 model = GaussianNB
7 X_train, X_test, Y_train, Y_test = train_test_split(X,Y)
----> 8 model.fit(X_train, Y_train)
TypeError: fit() missing 1 required positional argument: 'y'
Что я делаю неправильно? Как я могу решить эту проблему/ошибку?
'model = GaussianNB()' – cel
Спасибо .. однако, я получил еще одну ошибку сейчас. Любая идея, как его решить? '/Users/d/anaconda/lib/python3.4/site-packages/sklearn/utils/validation.py:515: DataConversionWarning: вектор-столбец y был передан, когда ожидался 1d-массив. Измените форму y на (n_samples), например, используя ravel(). y = column_or_1d (y, warn = True) ' – user3062459
Я сменил строку 5 на' Y = target.values.ravel() ', и она сработала. – user3062459