线性回归斜率与数据点之间的距离

时间:2018-03-06 12:27:29

标签: python scikit-learn

我适合LinearRegression()模型。我现在想要做的是基本上计算一些数据点和回归线之间的距离。

我的数据点是二维点(x,y)

我的问题是:我怎样才能从Pro Angular - Second Edition模型中得到该线的等式?

2 个答案:

答案 0 :(得分:1)

documentation开始,使用clf.coef_作为权重向量,使用clf.intercept_作为偏见:

  

coef_:数组,形状(n_features, )(n_targets, n_features)
  线性回归问题的估计系数。如果多个   在拟合期间传递目标(y 2D),这是一个2D形状阵列   (n_targets, n_features),如果只传递一个目标,则为a   1D长度为n_features的数组。

     

intercept_:数组独立术语   线性模型。

完成后,请参阅here

答案 1 :(得分:1)

在适合模型后,您可以调用coefintercept_属性来分别查看系数和截距。

但这将涉及为您的模型编写构造的公式。我的建议是,一旦您构建模型,进行预测并根据真实的y值对其进行评分 -

from sklearn.metrics import mean_squared_error
mean_squared_error(y_test, y_pred) # y_test are true values, y_pred are the predictions that you get by calling regression.predict()

如果目标是计算距离,则sklearn.metrics便利功能而不是查找等式并自行手动计算。手动方式是 -

import numpy as np
y_pred = np.concatenate(np.ones(X_test.shape[0]), X_test) * np.insert(clf.coef_,0,clf.intercept_)
sq_err = np.square(y_pred - y_test)
mean_sq_err = np.mean(sq_err)