matlab中怎么看拟合精度 怎么能求出拟合后的 R

>> % 多项式拟合
>> % 给定数据对
>> x0=0:0.1:1;
>> y0=[-0.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22];
>> % 求拟合多项式
>> n=3;
>> p=polyfit(x0,y0,n)

p =

56.6915 -87.1174 40.0070 -0.9043

>> % 图示拟合情况
>> xx=0:0.01:1;
>> yy=polyval(p,xx);
>> plot(xx,yy,'-b',x0,y0,'.r','MarkerSize',20)
>> legend('拟合曲线','原数据','location','southeast')
>> xlabel('x')

数据时图片格式的啊,复制不了。一般利用polyfit做多项式拟合或者lsqcurvefit做最小二乘拟合
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-07
k=1;
for i=1:10:length(yy)
y1(k)=yy(i);
k=k+1;
end
A=y1-y0;
fc=var(A);%求向量A的方差
bzc=std(A);%求向量A的标准差
pz=mean(A);%平均误差本回答被网友采纳
第2个回答  2010-09-09
[p,deta]=polyfit(x0,y0,n),得到的deta就是标准差,R