[转载]【MATLAB】MATLAB 线性拟合小结 —— polyfit

http://wenku.baidu.com/view/0a0ea0de941ea76e59fa0418.html?re=view

[p,S,mu]=polyfit(X,y,n) 

[p,S]=polyfit(X,y,n)

p=polyfit(X,y,n)

mu=[mean(X); std(X)]mean(X)X每一列的均值,std(X)X的标准差。

矩阵S用于生成预测值的误差估计。 S是一个结构体数组(struct),用来估计预测误差,包含了Rdfnormr 
Rpolyfit函数中,先根据输入的x构建范德蒙矩阵V,然后进行QR分解,得到的上三角矩阵。 
df:自由度, df=length(y)-(n+1)df>0时,为超定方程组的求解,即拟合点数比未知数(p(1)~p(n+1))多。 
normr:标准偏差、残差范数,normr=norm(y-V*p),此处的p为求解之后的数值。

利用polyval函数利用polyfit得到的多项式系数拟合x出的预测值。

y = polyval(p,x)
[y,delta] = polyval(p,x,S)
y = polyval(p,x,[],mu)
[y,delta] = polyval(p,x,S,mu)

注:还不确定polyconf(p,x,s) polyval(p,x,S)的区别

利用polyconf函数求polyfit所得的回归多项式在x处的预测值Y及预测值的显著性为1-alpha的置信区间Y±DELTAalpha缺省时为0.05 

polyconf()函数的调用格式为: 

Y=polyconf(p,x,s) 

[Y,DELTA]=polyconf(p,x,s,alpha) 

说明:Y=polyconf(p,x,s)使用polyfit函数的选项输出s给出Y95%置信区间Y±DELTA。它假设polyfit函数数据输入的误差是独立正态的,并且方差为常数,1-alpha为置信度。

举例:>> plot(x,y,'k+',x,Y,'r ',x,Y +DELTA,'r ',x,Y -DELTA,'r ') 

[转载]【MATLAB】MATLAB <wbr>线性拟合小结 <wbr>—— <wbr>polyfit


posted @ 2015-08-20 09:59  alameda  阅读(1730)  评论(0编辑  收藏  举报