1、matlab 回归(拟合)总结前言1、学三条命令polyfit(x,y,n)-拟合成一元幂函数(一元多次)regress(y,x)-可以多元, nlinfit(x,y,fun,beta0) (可用于任何类型的函数,任意多元函数,应用范围最广,最万能的)2、同一个问题,这三条命令都可以使用,但结果肯定是不同的,因为拟合的近似结果,没有唯一的标准的答案。相当于咨询多个专家。3、回归的操作步骤:根据图形(实际点) ,选配一条恰当的函数形式(类型)-需要数学理论与基础和经验。(并写出该函数表达式的一般形式,含待定系数)-选用某条回归命令求出所有的待定系数。所以可以说,回归就是求待定系数的过程(需确定函
2、数的形式)一、多元回归分析对于多元线性回归模型(其实可以是非线性,它通用性极高) :exxy p10设变量 的 n 组观测值为12,pxy 12(,)1,2iiyin 记 , ,则 的估计值为排列方式npnpxx 212112 ny2p10与线性代数中的线性方程组相同() ,拟合成多元函数-regress使用格式:左边用 b=b, bint, r, rint, stats右边用=regress(y, x)或 regress(y, x, alpha)-命令中是先 y 后 x, -须构造好矩阵 x(x 中的每列与目标函数的一项对应)-并且 x 要在最前面额外添加全 1 列/ 对应于常数项-y 必须
3、是列向量-结果是从常数项开始- 与 polyfit 的不同。 )其中: b 为回归系数,的估计值(第一个为常数项 ),bint 为回归系数的区间估计,r: 残差 ,rint: 残差的置信区间,stats: 用于检验回归模型的统计量,有四个数值:相关系数 r2、F 值、与 F 对应的概率p 和残差的方差(前两个越大越好,后两个越小越好) ,alpha: 显著性水平(缺省时为 0.05,即置信水平为 95%) , (alpha 不影响 b,只影响bint(区间估计)。它越小,即置信度越高,则 bint 范围越大。显著水平越高,则区间就越小)(返回五个结果)-如有 n 个自变量-有误(n 个待定系数
4、) ,则 b 中就有 n+1 个系数(含常数项,-第一项为常数项)(b-b 的范围/置信区间-残差 r-r 的置信区间 rint-点估计-区间估计如果 的置信区间(bint 的第 行)不包含 0,则在显著水平为 时拒绝i1i的假设,认为变量 是显著的*( 而 rint 残差的区间应包含 0 则更好) 。b,y0iix等均为列向量,x 为矩阵(表示了一组实际的数据 )必须在 x 第一列添加一个全 1 列。- 对应于常数项。相关系数 r2 越接近 1,说明回归方程越显著; (r2 越大越接近 1 越好)F 越大,说明回归方程越显著;(F 越大越好)与 F 对应的概率 p 越小越好,一定要 P cl
5、ear x=xlsread(cz.xls); %已经把所有的有效数据拷入到 cd.xls 文件中去了。 y=x(:,7); x(:,7)= ; z=ones(30,1); x=z,x; b,bint,r,rint,states=regress(y,x); b,statesb =159.14400.4585-0.0112-0.51250.0008-0.00280.3165stats =1.0e+003 *0.0010 0.2283 0 1.0488四、非线性回归或曲线回归问题配曲线的一般方法是:(一)先对两个变量 x 和 y 作 n 次试验观察得 画出散点图,niyxi,.21),( 6 8 6 7 8 9 m散点图(二)根据散点图确定须配曲线的类型.通常选择的六类曲线如下:(1)双曲线 xbay1(2)幂函数曲线 y=a , 其中 x0,a0b(3)指数曲线 y=a 其中参数 a0.xe(4)倒指数曲线 y=a 其中 a0,b/(5)对数曲线 y=a+blogx,x0(6)S 型曲线 xbeay1(三)然后由 n 对试验数据确定每一类曲线的未知参数 a 和 b.解例 2.由散点图我们选配倒指数曲线 y=a xbe/根据线性化方法,算得 4587.2,10.Ab由此 6789.Aea最后得 xy10