Matlab 使用两行之间的插值

Matlab 使用两行之间的插值,matlab,matrix,Matlab,Matrix,我正在试着做插值。我有一个矩阵Y和2*1000。第一行是Y时间1秒的值,第二行是Y时间3秒的值。我试图在时间1.7秒时获取Y值 比如说, 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

我正在试着做插值。我有一个矩阵
Y
2*1000
。第一行是
Y
时间
1
秒的值,第二行是
Y
时间
3
秒的值。我试图在时间
1.7
秒时获取
Y

比如说,

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]
我试图用时间来插值。我曾经

Y_1_7 = interp1(Y(1,:),Y(2,:),1.7);
它不起作用

谢谢

这里似乎很有帮助

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

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

所以应该是这样的:

Y_1_7 = interp1([1 3 4], Y, 1.7)
这似乎很有用

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

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

所以应该是这样的:

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

这里的Y.*语法没有第二个参数做什么?哎呀。我是说Y,它转换了Y矩阵。除了虚数的情况外,它与Y'相同。在这种情况下,Y'进行转置,然后共轭所有数字,而Y'只是转置它们。最后一次编辑@Ian Riley,你打破了你的代码线,谢谢。请你解释一下好吗?@bwall。非常感谢。但我仍然对第1行和第2行之间的1.7进行插值。为什么要在插值中添加最后一次?这里的Y.*语法没有第二个参数做什么?哎呀。我是说Y,它转换了Y矩阵。除了虚数的情况外,它与Y'相同。在这种情况下,Y'进行转置,然后共轭所有数字,而Y'只是转置它们。最后一次编辑@Ian Riley,你打破了你的代码线,谢谢。请你解释一下好吗?@bwall。非常感谢。但我仍然对第1行和第2行之间的1.7进行插值。为什么我要在插值中添加上一次?