【发布时间】:2020-12-06 07:31:35
【问题描述】:
在拟合简单的线性回归模型后,我使用以下公式:“y=mx+c”来找到给定 'y 的 'x' 值' 价值。显然,拟合模型后,我得到了“m”和“c”的值。
model = LinearRegression(fit_intercept=True)
model.fit(X,Y)
print('intercept:', model.intercept_)
print('slope:', model.coef_)
intercept: 1.133562363647583
slope: [-0.00075101]
#finding 'x' val for y=1 : x=(y-c)/m
x=(1-model.intercept_)/model.coef_[0]
现在,我认为 Linear 做得不好,并且看到 3 次多项式拟合 给出了最好的结果(不包括此处的图表)。现在,我如何从下面的代码 sn-p 预测给定“y”值的“x”值:
from sklearn.preprocessing import PolynomialFeatures
poly = PolynomialFeatures(degree = 3)
X_poly = poly.fit_transform(X)
poly.fit(X_poly, Y)
model2 = LinearRegression(fit_intercept=True)
model2.fit(X_poly, Y)
print('intercept:', model2.intercept_)
print('slope:', model2.coef_)
intercept: 1.461870542630406
slope: [ 0.00000000e+00 -1.12408245e-02 9.69531205e-05 -2.72315461e-07]
【问题讨论】:
标签: python machine-learning scikit-learn regression non-linear-regression