MATLAB 曲线拟合应用实例
股票预测问题:
x=[2,3,4,5,8,9,10,11,12,15,16,17,18,19,22,23,24,25,26,29,30];
y=[7.74,7.84,7.82,7.78,7.91,7.97,7.9,7.76,7.9,8.04,8.06,8.11,8.08,8.13,8.03,8.01,8.06,8.0,8.3,8.41,8.28];
plot(x,y,'*');
p=polyfit(x,y,3);
plot(x,y,'*',x,polyval(p,x));
x1=[31,32,33];
xi=[x,x1];
plot(x,y,'*',xi,polyval(p,xi));
y1=[8.27,8.17,9.54];
plot(x,y,'*',xi,polyval(p,xi),x1,y1,'rp');
算法的参数优化问题:
x=0.03:0.03:0.3;
y1=[0.01,0.01,0.02,0.03,0.06,0.07,0.13,0.17,0.25,0.37];
y2=[0.85,0.76,0.68,0.62,0.56,0.52,0.49,0.46,0.43,0.39];
plot(x,y1,'*',x,y2,'o');
y1=[0.01,0.01,0.02,0.03,0.06,0.07,0.13,0.17,0.25,0.37];
y2=[0.85,0.76,0.68,0.62,0.56,0.52,0.49,0.46,0.43,0.39];
p1=polyfit(x,y1,2);
p2=polyfit(x,y2,2);
p=p1-p2;
xi=roots(p);
xj=0:0.03:0.36;
yj1=polyval(p1,xj);
yj2=polyval(p2,xj);
yi=polyval(p1,xi(2))
plot(x,y1,'*',x,y2,'o',xj,yj1,xj,yj2,xi(2),yi,'rp');
数据插值与曲线拟合的比较:
相同点: 1.都属于函数逼近的方法 2.都能进行数据估算
不同点: 1.实现方法不同 2.结果形式不同 3.侧重点不同 4.应用场合不同