2024-10-02 00:33:36 发布
网友
我对这整件事还不熟悉,所以我一直在寻找解决方案并阅读博客等。但是没有用,如果你能解释问题以及解决方案,我将不胜感激
[![][[1]][1]
代码:
import pandas as pd df = pead_csv( x = StandardScaler().fit_transform(df) } d return viz_polymonial()
首先,您要对多项式特征进行两次拟合,这是您的预期用途吗
所描述的问题源于这样一个事实,即plt.plot(X, Y)与线(X[0], Y[0])与(X[1], Y[1]),(X[1], Y[1])与(X[2], Y[2])连接,等等。顺序很重要,如果对X和Y进行无序排列,将得到不同的图。这里你的点是无序的,你需要对它们进行排序以得到一个更平滑的图
plt.plot(X, Y)
(X[0], Y[0])
(X[1], Y[1])
(X[2], Y[2])
def viz_polymonial(): plt.scatter(X.iloc[:, 1], Y, color='red') data = list(zip(X, pol_reg.predict(poly_reg.transform(X))) # sort data by X and unpack sorted_X, sorted_Y = **sorted(data) plt.plot(sorted_X, sorted_Y, color='blue') plt.xlabel('Age. Annual income') plt.ylabel('Spending Score') plt.show() return viz_polymonial()
如果你做最小可重复的例子,我会在我的机器上测试它
首先,您要对多项式特征进行两次拟合,这是您的预期用途吗
所描述的问题源于这样一个事实,即
plt.plot(X, Y)
与线(X[0], Y[0])
与(X[1], Y[1])
,(X[1], Y[1])
与(X[2], Y[2])
连接,等等。顺序很重要,如果对X和Y进行无序排列,将得到不同的图。这里你的点是无序的,你需要对它们进行排序以得到一个更平滑的图如果你做最小可重复的例子,我会在我的机器上测试它
相关问题 更多 >
编程相关推荐