使用Octave / Matlab interp1上的2个端点进行外推

时间:2018-03-24 10:58:12

标签: matlab octave

我正在尝试插入数据集中的点,但是假设2个端点继续使用相同的y值来推断数据集范围之外的任何x值。我正在使用interp1来执行插值。但是,我看到Octave或Matlab只允许外推单个标量值。有人可以建议我如何使用2个单独的值进行外推吗?

1 个答案:

答案 0 :(得分:0)

在matlab中如果指定'extrap'而不是使用与插值相同的方法进行外推,如果插值不是“最接近”,则可以手动设置外部值:

x=[0,1,2,3];
v=[0,1,-1,5];

xq=linspace(-5,5,100);

vq = interp1(x,v,xq,'linear','extrap');
vq(xq>max(x))=v(x==max(x));
vq(xq<min(x))=v(x==min(x));

plot(x,v,'*',xq,vq)

Empty string error