numpy.reshape(a,(-1,1))的含义
https://blog.csdn.net/m0_38052384/article/details/102692708
用一个例子与感受一下欠拟合:
注意升维
#演示一下欠拟合场景
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
#np.linspace主要用来创建等差数列。 起始位置 ,终止位置 ,产生多少个
x = np.linspace(1,10,50)
y = x* np.sin(x)
#显示中文
plt.rcParams["font.family"] = "SimHei"
plt.rcParams ["font.size"] =12
#X = x[:,np.newaxis]
X = x.reshape(-1,1)
#线性回归初始化
lr = LinearRegression()
lr.fit(X,y)
#绘制散点图
plt.scatter(x,y,c='g',label = '样本数据')
plt.plot(X,lr.predict(X),c = "r",label = '拟合线')
#绘制图例
plt.legend()
#lr.score(X,y) 就是R^2 值
plt.title(f"$R^2$ :{lr.score(X,y):.3f}")
复习一个多项式特征:.
多项式扩展之后依旧还可以应用于线性模型
#复习一下多项式特征
from sklearn.preprocessing import PolynomialFeatures
x = np.array( [ [1,2],[3,4]] )
pr