我是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函数来做可能吗?
答案 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' )