1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 回归:最小二乘法求解回归模型代码

回归:最小二乘法求解回归模型代码

时间:2020-12-15 23:20:53

相关推荐

回归:最小二乘法求解回归模型代码

import numpy as npimport matplotlib.pyplot as pltdef least_square(X,Y):'''最小二乘法:param X:矩阵,样本特征矩阵:param Y: 矩阵,标签向量:return: 矩阵,回归系数'''W = (X * X.T).I * X * Y.T#教材公式return Wtemperatures = [15,20,25,30,35,40]flowers = [136,140,155,160,157,175]X = np.mat([[1,1,1,1,1,1],temperatures])print("X",X)Y = np.mat(flowers)print("Y",Y)W =least_square(X,Y)print("W",W)plt.rcParams['font.sans-serif']=['SimHei'] #显示中文标签plt.rcParams['axes.unicode_minus']=False ##运行配置参数总的轴(axes)正常显示正负号(minus)plt.scatter(temperatures, flowers, color="green", label="花朵数量", linewidth=2)#散点图plt.plot(temperatures,flowers,linewidth=1)#折线图x1=np.linspace(15, 40, 100)#来创建等差数列,x横坐标y1 = W[1,0]*x1 + W[0,0] #创建x对应的纵坐标,W中存放权重和偏置,plt.plot(x1, y1, color="red", label="拟合直线", linewidth=2,linestyle=':')plt.legend(loc='lower right')#调整图例位置,右下plt.show()new_tempera = [18,22,33]new_tempera = (np.mat(new_tempera)).T#矩阵转置pro_num = W[1,0]*new_tempera+W[0,0]print("pro_num",pro_num)#回归拟合

运行图像

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。