Python 错误值错误:尝试使用交叉值和线性回归时不支持连续
我使用了sklearn和线性回归的load_boston数据集。 守则:Python 错误值错误:尝试使用交叉值和线性回归时不支持连续,python,python-3.x,machine-learning,scikit-learn,linear-regression,Python,Python 3.x,Machine Learning,Scikit Learn,Linear Regression,我使用了sklearn和线性回归的load_boston数据集。 守则: from sklearn.datasets import load_boston import pandas as pd import numpy as np %matplotlib inline from sklearn.model_selection import train_test_split, KFold,cross_val_score,cross_validate from sklearn.linear_mod
from sklearn.datasets import load_boston
import pandas as pd
import numpy as np
%matplotlib inline
from sklearn.model_selection import train_test_split, KFold,cross_val_score,cross_validate
from sklearn.linear_model import LinearRegression
#Loading the dataset
x = load_boston()
df = pd.DataFrame(x.data, columns = x.feature_names)
df["MEDV"] = x.target
X = df.drop("MEDV",1) #Feature Matrix
y = df["MEDV"] #Target Variable
df.head()
linear = LinearRegression()
X_train,X_test, y_train,y_test = train_test_split(X,y, random_state = 11)
linear.fit(X_train,y_train)
kfold = KFold(n_splits=5, random_state=11, shuffle=True)
scores = cross_val_score(estimator= linear,cv=kfold, X=X, y = y, )# if scoring= "accuracy": error
#>ValueError:不支持连续
print(f"Mean Accuracy: {scores.mean():.2%} and standard deviation: {scores.std():.2%}")
如果我在交叉评分中使用scoring=“accurity”
,则会出现错误:
ValueError: continuous is not supported
发生了什么事?准确度在这里不起作用,因为它是一种针对分类问题的度量标准。即:
- 正确预测数
预测总数/
R^2
评分,这是一个回归问题的评分
您可以查看sklearn
中支持的不同评分类型,以及它们适合哪些问题:
- 正确预测数
预测总数/
R^2
评分,这是一个回归问题的评分
您可以查看sklearn
中支持的不同评分类型,以及它们适合哪些问题:
LinearRegression()
。我不知道你怎么能说你在做分类。准确度是一个分类指标,在回归设置中它只是毫无意义,因此是错误的;请参见此处的类似情况:您的问题也是回归,而不是分类您正在代码中使用LinearRegression()
。我不知道你怎么能说你在做分类。