Monday, July 27, 2009

Matlab: fast way to insert zeros into a vector

OP here.

Q:

Suppose I have vector

x = [1 2 3 4 5 6 7]

How do I insert zeros at every 3rd position to obtain

y = [1 2 0 3 4 0 5 6 0 7]

A1:
y = zeros(1,floor(length(x)*1.5));
z = 1:length(x);
y(z+ceil(z/2)-1) = x;

No comments: