I have a matrix as following:
A = [0,0;0,0;800,1096;1097,1461;1462,1701]
The amount of rows with 0's can be different depending on the input.
I'm trying to remove all the rows with 0's.
I've tried many different related questions but can't seem to figure it out.
One of the latest solutions I tried is this:
rowsWithZeros = any(A==0,"all");
A = A(~rowsWithZeros,:);

1 commentaire

Torsten
Torsten le 17 Jan 2023
I'm trying to remove all the rows with 0's.
All rows where at least one element is 0 or all rows where all elements are 0 ?

Connectez-vous pour commenter.

 Réponse acceptée

Torsten
Torsten le 17 Jan 2023
Modifié(e) : Torsten le 17 Jan 2023
% First case (see above)
A = [0,0;0,0;800,1096;0,1461;1462,1701];
A( any(~A,2), : ) = [];
A
A = 2×2
800 1096 1462 1701
% Second case (see above)
A = [0,0;0,0;800,1096;0,1461;1462,1701];
A( all(~A,2), : ) = [];
A
A = 3×2
800 1096 0 1461 1462 1701

Plus de réponses (0)

Catégories

Produits

Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by