Separating a matrix into two matrices based on a value of one of the columns.
1 view (last 30 days)
Show older comments
So I have a matrix like such
Data2 =
and I want to separate the matrix into two different matrices based on the 4th column. I want to have two separate matrices where one has only rows with a number above zero in column 4 and the other has only values with zero in column 4. I am also set with the stipulations that I cannot use If statements. any ideas?
Thank you for your time.
0 Comments
Accepted Answer
Andrei Bobrov
on 28 Feb 2013
Edited: Andrei Bobrov
on 28 Feb 2013
p = data(:,4) > 0; % here 'data' - your array
out = {data(p,:), data(~p,:)};
if there is a negative value, then
out = {data(data(:,4) > 0,:), data(data(:,4) == 0,:)};
2 Comments
More Answers (0)
See Also
Categories
Find more on NaNs in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!