Finding 0 in data for n X 2 array
1 view (last 30 days)
Show older comments
hi all,
Good day! pretty new to matlab, and used to be a java programmer that is more familiar with for loops. I do know there are certain elegance in matlab by using some Matlab functions on matrix / arrays.
I have a simple problem that i think can be resolved without a for loop, and i think we can use the "All" function in Matlab but i couldn't grasp it just yet.
I have the below data.
36 -31
36 -27
0 0
35 -30
0 0
32 -30
0 0
31 -30
0 0
32 -30
, just wanted to remove the whole row if both values are 0 in the same row. Is it possible without doing a for loop? Thank you!
Darren
0 Comments
Accepted Answer
KALYAN ACHARJYA
on 2 Jan 2021
Edited: KALYAN ACHARJYA
on 2 Jan 2021
Another way
result=data(~(data(:,1)==0 & data(:,2)==0),:)
result =
36 -31
36 -27
35 -30
32 -30
31 -30
32 -30
More Answers (1)
Alan Stevens
on 2 Jan 2021
Edited: Alan Stevens
on 2 Jan 2021
Here's one way:
ix = (M(:,1)+M(:,2))==0;
M(ix,:) = [];
See Also
Categories
Find more on Matrices and Arrays 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!