【发布时间】:2020-11-14 21:54:20
【问题描述】:
我发现 LinearRegression 中 score() 的结果与 r2_score() 不同。我希望他们返回相同的结果。代码如下:
r2_train = np.empty(shape=[10, 0])
r2_train_n = np.empty(shape=[10, 0])
for set_degree in range (0,10):
pf = PolynomialFeatures(degree= set_degree)
X_train_tf = pf.fit_transform(X_train.reshape(11,1))
X_test_tf = pf.transform(X_test.reshape(4,1))
lr = LinearRegression().fit(X_train_tf, y_train)
r2_train = np.append(r2_train, r2_score(lr.predict(X_train_tf), y_train))
r2_train_n = np.append(r2_train_n, lr.score(X_train_tf, y_train))
【问题讨论】:
-
你把
r2_score的输入搞混了。检查文档,哪些位置参数应该是真实值,哪些应该是预测值。 -
我的错误。太感谢了。我对它有了更好的理解。
标签: python machine-learning scikit-learn linear-regression