How to delete entire row containing a certain value.
Afficher commentaires plus anciens
I am trying to delete all rows in matrix A that contain 'NaN' using the code below. A(any(isnan(A)),:)=[];
I used this code for A=[NaN 1 1; NaN 2 2; 1 NaN 1; 2 NaN 2], and the output for A was
A =
1 NaN 1
2 NaN 2
So the code successfully deleted the first two rows containing NaN, but not the last two. Why is this and how can I fix my code?
Réponse acceptée
Plus de réponses (1)
Does this work?
A(any(isnan(A),2),:) = []
It looks like your "any" function was operating column-by-column instead of row-by-row.
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!