How to delete entire row containing a certain value.
이전 댓글 표시
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?
채택된 답변
추가 답변 (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.
카테고리
도움말 센터 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!