【发布时间】:2021-05-06 13:10:36
【问题描述】:
我有一个问题,我有一个训练数据集,其中所有 Y 值都是 0.75,我的模型将每行的分数预测为回归 - 但是在计算 r2 时它是零,我不明白为什么
我只发现了 1 个其他类似问题 (Scikit-learn R2 always zero),但应用那里给出的答案对我没有帮助,所以我不确定我哪里出错了。
我拥有的是这样的:
df["Score"] = 0.75
Y = df["Score"]
df_valid = df.drop(["Score"],1)
y_pred = model.predict(df) #model is random forest regressor from sklearn
prediction = np.array(y_pred)
training = np.array(Y)
print(prediction)
print(training)
[0.77279743 0.18169051 0.81874664 0.75440987 0.67748983 0.56747803
0.66120282 0.5829188 0.73471978 0.57745964 0.48272321 0.65313173
0.805028 0.63791055 0.49677642 0.64341235 0.55456506 0.52329214
0.67690119 0.79450821 0.63378986 0.69522612 0.69802982 0.6719472
0.67977281 0.29016943 0.56192242 0.16265814 0.57813068 0.72598279
0.50255597 0.77138968 0.53745061 0.527479 0.67161703 0.64326146
0.5299367 0.79977403 0.73527391 0.50858258 0.74660319 0.72315073
0.71879784 0.55134538 0.61812615 0.64722909 0.67055658 0.68687499
0.73416035 0.4781765 0.74878142 0.5773583 ]
[0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75
0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75
0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75
0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75 0.75]
prediction 和 training 都是相同形状的 numpy 数组 - 我还缺少其他东西吗?
当我尝试 print(r2_score(training, prediction)) 时,它给了我 0。
【问题讨论】:
标签: python scikit-learn regression