在两行之间使用插值

时间:2016-10-14 21:25:16

标签: matlab matrix

我正在尝试插值。我有IncorrectResults ID timestamp v1 v2 v3 ... v28 Machine_ID Part_A 1 1/1/2016 12:00:13 .001 .123 1.3 ... 24.6 23 0 2 1/1/2016 12:00:14 .002 .122 1.2 ... 24.9 14 2 3 1/1/2016 12:00:15 .005 .025 NA ... 23.1 6 16 4 1/2/2016 12:00:15 .005 .025 NA ... 23.1 6 24 矩阵Y。第一行是时间2*1000秒的Y值,第二行是时间1秒的Y值。我想在时间3

获得Y个值

例如,

1.7

我正在尝试插入时间。我用了

at time 1 sec Y(1,:)=[1 3 4 6 8 1 4 2 9]      and X=[1 2 3 4 5 6 7 8 9]
at time 3 sec Y(2,:)=[2 6 8 1 9 2 7 8 2]      and X=[1 2 3 4 5 6 7 8 9]
at time 4 sec Y(3,:)=[21 6 81 1 9 12 7 28 2]  and X=[1 2 3 4 5 6 7 8 9]

无效

由于

1 个答案:

答案 0 :(得分:1)

https://www.mathworks.com/help/matlab/ref/interp1.html?requestedDomain=www.mathworks.com似乎对此有用

  

vq = interp1(x,v,xq)使用线性插值返回特定查询点处的1-D函数的插值。

     

向量x包含样本点,v包含对应值,v(x)。向量xq包含查询点的坐标。   如果您有多组数据在相同的点坐标处采样,则可以将v作为数组传递。数组v的每列包含一组不同的1-D样本值。

所以它应该是这样的:

Y_1_7 = interp1([1 3 4], Y, 1.7)