填充数据集中的缺失数据

时间:2015-04-12 16:18:53

标签: matlab dataset interpolation

我有一个如下数据集:

x= [1, 4, 10]
y= [10, 20, 30]

xy是值对,即(1,10), (4,20), (10,30)

我想填充x值差距并获得y的线性插值。应在每个值对之间进行线性插值,即在(1,10)(4,20)之间,然后再在(4,20)(10,30)之间。

x= [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y= [10,?, ?, 20, ?, ?, ?, ?, ?, 30]

如何使用MATLAB解决这个问题? 问候, 丹尼斯

P.S。我的原始数据集有超过300个值对......

1 个答案:

答案 0 :(得分:1)

使用interp1

<强>代码:

x= [1, 4, 10];
y= [10, 20, 30];
xi = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
yi = interp1(x,y,xi);

<强>结果:

>> yi

yi =

  10    13.333   16.667    20    21.667    23.333    25    26.667   28.333     30
使用plot(xi,yi,'-*')

图形输出

enter image description here