MATLAB Answers

create two matrices from a larger matrix

5 views (last 30 days)
hi,
so I have this matrix harmonics [40x99226] and I want to create two matrices from the original, called harmA and harmB. harmA will have the rows 1,3,5...39 while harmB will get the rest 2,4,6...40. The new matrices will still carry all the 99226 samples that belong to each row. This is what I have so far, but it's not doing the trick.
Thank you for taking the time, I appreciate it!

  0 Comments

Sign in to comment.

Accepted Answer

Wayne King
Wayne King on 28 Mar 2013
Edited: Wayne King on 28 Mar 2013
Just do:
X = randn(40,99226);
harmA = X(1:2:end,:);
harmB = X(2:2:end,:);
MATLAB is generally really good at handling these types of matrix-vector operations without loops.

  0 Comments

Sign in to comment.

More Answers (1)

tony karamp
tony karamp on 28 Mar 2013
omg... you are right!
I had tried
harmA = X(1:2:end);
harmB = X(2:2:end);
but didn't work.
I didn't think to add the other dimension.
Thanks a bunch

  0 Comments

Sign in to comment.

Tags