请问我用的如下代码为什么要不就是没结果要不就是出现警告:
Warning: Polynomial is badly conditioned. Remove repeated data points
or try centering and scaling as described in HELP POLYFIT.
t=[.......];% t,v都是数据
v=[......];
for i=6
y=polyfit(t,v,i);
Y=polyval(y,t);
if sum((Y-v).^2)<0.1
c=i
break;
end
end
或者各位有没有更好的解决办法,求得拟合多项式的最高阶,还是说高阶越高拟合效果越好。。。真心求助!!
é£è¿ä¸ªNæ¯æä¹ç¡®å®çï¼æçæ°æ®æ¯è¾é¿å¹¶ä¸å¥½åå «æ¬¡å°±æ¯æ好çï¼ä½æä¸ç¥é为ä»ä¹è¦éå «æ¬¡ï¼åç¾åº¦è¯´æ¯è¦ç¨SSEæ¥æ±è¯¯å·®å¹³æ¹åï¼è¿ä¸ªæ¯æä¹ç¨çå¢ï¼æ好æ举ä¾ä»£ç çï¼é常æè°¢~ï¼ï¼
追çclc;clear all
x=1:0.01:pi;
y=2*sin(3*x).*cos(5*x);
for i=1:8
p=polyfit(x,y,i);
y1=polyval(p,x);
S2(i)=sum((y1-y).^2);
end
k=find(S2==min(S2));
fprintf('æ佳设置ï¼N=%d\n',k)