How to delete entire row containing a certain value.
Mostrar comentarios más antiguos
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?
Respuesta aceptada
Más respuestas (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.
Categorías
Más información sobre Logical en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!