根据原理的代码!lkx半桶水看不懂那种xixi
在jupyter跑的!
目录
线性回归
import numpy as np
import os
import matplotlib.pyplot as plt
#字体设置
plt.rcParams['axes.labelsize']=14
plt.rcParams['xtick.labelsize']=12
plt.rcParams['ytick.labelsize']=12
import warnings
warnings.filterwarnings('ignore')
import numpy as np
X=2*np.random.rand(100,1)
y=4+3*X+np.random.randn(100,1)
X_b=np.c_[np.ones((100,1)),X]
#最小二乘法的结果
theta_best=np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y)
X_new=np.array([[0],[2]])#(0,2)连接画一条线
X_new_b=np.c_[np.ones((2,1)),X_new]
y_predict=X_new_b.dot(theta_best)
plt.plot(X_new,y_predict,'r--')
plt.plot(X,y,'b.')
plt.show()
直接调api