【问题标题】:Problems with linear regression model线性回归模型的问题
【发布时间】:2020-08-05 16:17:42
【问题描述】:

我使用来自篮球参考的数据创建了这个 DataFrame,我得到了每个特征的平均值。 DataFrame Data 无论我用哪一列来训练我的线性模型,我的 R2 分数都接近 0,而且预测很糟糕。

import pandas as pd
import numpy as np
from sklearn import linear_model
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import r2_score
import math


percent=math.floor(len(df)*0.80)
X=df['Mean MP'].to_numpy()
Y=df['BPM'].to_numpy()
Y=Y.reshape(Y.shape[0], )
X=StandardScaler().fit_transform(X)

X_train=X[:percent]
Y_train=Y[:percent]
X_test=X[percent:]
Y_test=Y[percent:]

model=linear_model.LinearRegression()
model.fit(X_train,Y_train)

a=r2_score(Y_test,model.predict(X_test))
a=-0.07

我认为这是我创建或使用 DataFrame 的方式,但我不知道如何解决问题。 我希望你能帮助我,谢谢。

【问题讨论】:

    标签: python pandas dataframe linear-regression


    【解决方案1】:

    也许这不是机器学习的正确问题。您确定数据框中存在的一个或多个统计信息与 BPM 分数之间存在某种关系吗?也许尝试使用像决策树这样的多类分类算法,使用所有特征,在将 BPM 更改为分类分数之后,比如 0 到 -2 之间是替补球员,4 到 6 之间是全明星考虑。我对篮球一无所知,我使用this链接了解事情。

    【讨论】: