Adding rows to a matrix after every even row

14 views (last 30 days)
Is there a way, without using a for loop, to add a row of nan's to a matrix after every even row of the original matrix? For example,
A = [6;2;2;1;1;0;]; %original A matrix will always have an even number of elements
becomes
A = [6;2;NaN;2;1;NaN;1;0];
My initial plane was to make a vector of NaN's having the same size as the final matrix.
temp = nan(size(A,1)/2 - 1,:);

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 19 May 2013
Edited: Azzi Abdelmalek on 19 May 2013
A = [6;2;2;1;1;0]
B=[reshape(A,2,[]);nan(1,numel(A)/2)];
B=B(:)

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!