ValueError: error_score должен быть строкой «raise» или числовым значением c. (Подсказка: при использовании слова «поднять» убедитесь, что оно написано правильно.) - PullRequest
1 голос
/ 04 августа 2020

Я работаю над регрессией дерева решений в Python.

Получил странную ошибку:

ValueError: error_score must be the string 'raise' or a numeric value. (Hint: if using 'raise', please make sure that it has been spelled correctly.)

Мой фрейм данных содержит примерно 330000 * 91 столбец.

Мой код выглядит так:

# Read data
y = my_train2.iloc[:,0]
x = my_train2.iloc[:, 1:93]

(x_train, x_test, y_train, y_test) = cv.train_test_split(x, y, test_size=.20)
# Instantiate dt
dt = DecisionTreeRegressor(# max_depth = 8,
                       min_samples_leaf = 1,
                       random_state = 1)

# Fit dt to the training set
dt.fit(x_train, y_train)

Этот фрагмент ниже дает ошибку

from sklearn.model_selection import cross_val_score
# Compute the array containing the 10-folds CV MSEs
MSE_CV_scores = - cross_val_score(dt, x_train, y_train, cv=10, 
                              scoring='neg_mean_squared_error', 
                              n_jobs=-1) 

# Compute the 10-folds CV RMSE
RMSE_CV = (MSE_CV_scores.mean())**(1/2)

# Print RMSE_CV
print('CV RMSE: {:.2f}'.format(RMSE_CV))

Я могу вывести здесь класс каждого столбца, если необходимо.

Спасибо !

1 Ответ

0 голосов
/ 21 августа 2020

Может быть связана с версией вашего scikit-learn. Я думаю, эта ошибка появляется для 0.22. Может быть ... понизьте его до 0,21 и попробуйте снова

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...