每两个元素意味着这两个元素之间

时间:2015-03-22 13:22:45

标签: matlab vector

我是Matlab的新手。我尝试连续两个元素'意味着把它放在这两个连续元素之间。例如; 如果我有一个如下的矢量:

  a=[1 2 5 4 3 6]

最后我需要像:

b=[1 1.5 2 3.5 5 4.5 4 3.5 3 4.5 6] 

它可以通过循环来完成,但我尝试通过matlab函数来做可能吗?

1 个答案:

答案 0 :(得分:1)

“蛮力方式”:

b = zeros( 1, 2*numel(a)-1 );
b(1:2:end) = a; % take care of the original values
b(2:2:end) = 0.5*( a(1:end-1) + a(2:end) ); % the mean

使用interp1

b = interp1( 1:2:(2*numel(a)-1), a, 1:(2*numel(a)-1), 'linear' )