我做了一个代码来预测Y值,X和Y是相同长度的数组
from sklearn.linear_model import Ridge
from sklearn.preprocessing import PolynomialFeatures
from sklearn.pipeline import make_pipeline
plt.scatter(X,Y,1)
regr2 = make_pipeline(PolynomialFeatures(10), Ridge())
regr2 =regr2.fit(X[:,np.newaxis], Y)
y_pred=regr2.predict(X[:,np.newaxis])
plt.plot(X, y_pred, color='red')
plt.show()
这是一个很好的近似值 但是当我用测试值和训练值来做的时候,它显示了一个指数,当我绘制它时,它不应该这样做。你知道吗
实际上,yu pred1是xu测试加上一个小的十进制数
plt.scatter(X_test,Y_test,1)
X_train=X[0:int(0.8*len(X))]
X_test=X[int(0.8*len(X)):]
Y_train=Y[0:int(0.8*len(X))]
Y_test=Y[int(0.8*len(X)):]
regr3 = make_pipeline(PolynomialFeatures(10), Ridge())
regr3 =regr3.fit(X_train[:,np.newaxis], Y_train)
y_pred1=regr3.predict(X_test[:,np.newaxis])
plt.plot(X_test, y_pred1, color='red')
plt.show()
我尝试了几件事,甚至用序列值来测试预测,在这个例子中,它也绘制了一个指数而不是点的近似值。你知道吗
提前谢谢!你知道吗
修好你的火车
相关问题 更多 >
编程相关推荐