【笔记-自用】建模笔记-第三讲-插值算法-未来数据的预测和缺失数据的补充预测

插值算法

  • 用途
  • 适用环境
  • 分类
    • 一般使用分段插值
  • MATLAB中的使用
    • 内置函数
    • x,y的赋值
    • 画图
      • 多个图
      • 给图像标记注释

用途

预测未来数据和缺失数据的补充

适用环境

  • 现有数据极少,不足以支撑分析,因此使用插值扩充数据。
  • 题目中给的两个文件中其中一个有数据缺失,需要用插值来找到这两个文件中的联系。

分类

  • 拉格朗日插值法
  • 牛顿插值法
  • 分段插值法
  • Hermite插值法
  • 样条插值法

一般使用分段插值

龙格现象:高次插值(节点多)时,图像中的两端波动较大,产生明显震荡,不能靠近真实曲线。
因此,一般使用分段低次插值

MATLAB中的使用

内置函数

  • PCHIP 分段三次埃尔米特插值(Hermite):pchip(x,y,new_x);
  • 分段三次样条插值:spline(x,y,new_x); 样条插值更为精确

x,y的赋值

有两种方法赋值:

x=1:4;%法一 表示以1为公差,1到4的等差数列
x=[1,2,3,4];%法二

那公差如何改变呢?

x=1:0.1:2;%表示以0.1为公差,1到4的等差数列
x=[1,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2];

因此,使x转化为new_x只需改变公差即可。

画图

函数为:
plot(x,y,‘画图方式’)
‘画图方式’:‘颜色+点+线’
线方式: - 实线 :点线 -. 虚点线 - - 波折线
点方式: . 圆点 +加号 * 星号 x x形 o 小圆
颜色: y黄; r红; g绿; b蓝; w白; k黑; m紫; c青

多个图

在同一个脚本文件里面,要想画多个图,需要在plot()q给每个图编号,否则会出现图像覆盖现象。

figure(1);
plot(...)
figure(2);
plot(...)

给图像标记注释

LEGEND(string1,string2,string3, …)
分别将字符串1、字符串2、字符串3……标注到图中,每个字符串对应的图标为画图时的图标。
‘Location’用来指定标注显示的位置
legend(‘样本点’,‘三次埃尔米特插值’,‘三次样条插值’,‘Location’,‘SouthEast’)

plot(x1,y1,'画图方式1',x2,y,2'画图方式2')
legend('string1第一条线的意义','string2第二条线的意义')

当注释挡到图像时,可以在后面添加’location’,‘SouthEast’(东南方,右下角),其他的类推。

你可能感兴趣的:(数学建模,算法,matlab,数据挖掘)