scikit-learn 的线性回归模型未按预期工作

问题描述 投票:0回答:2

我正在尝试了解 Scikit-learn 中线性回归模型的内部工作原理。

这是我的数据集

这是我执行 one-hot-encoding 后的数据集。

这是执行线性回归后的系数和截距值。

销售价格是从属列,其余列是特征。
这些是在这种情况下工作正常的预测值。

我注意到系数的数量比特征的数量多 1。这就是我生成特征矩阵的方式:

feature_matrix = dataFrame.drop(['Sell Price($)'], axis = 'columns').to_numpy()

# Array to be added as column
bias_column = np.array([[1] for i in range(len(feature_matrix))])

# Adding column to array using append() method
feature_matrix = np.concatenate([bias_column, feature_matrix], axis = 1)  # axis = 1 means column, 0 means row

结果

我想知道的是Scikit-learn如何使用这些系数和截距来预测值。
这是我尝试过的。

我还注意到,通过进行此计算得到的值实际上等于每种情况下的里程数。但这不是这里的依赖功能。那么这是怎么回事?

python pandas numpy machine-learning scikit-learn
2个回答
1
投票

从这个计算中得到里程的原因是里程的系数为1。而其他系数非常小。

另请注意,由于添加了偏差列,因此您有足够的系数,因此系数的数量等于包括偏差列的特征。

由于您没有展示如何获得系数,所以我无法告诉您那里是否出了问题。 (设置正确的因变量等)


© www.soinside.com 2019 - 2024. All rights reserved.