2013-02-11 9 views
3

Matlab에서 필요한 행렬에서 spesific 행을 제거하려면 어떻게해야합니까? 예를 들어, spesific 값 (예 : 0 또는 NaN)을 포함하는 행렬에서 모든 행을 제거하려면? 당신이 할 수있는,몇 가지 기준에 따라 Matlab에서 행렬을 제거 할 수 있습니까?

any(isnan(A')) 

ans = 

    0  0  0  1 

NaN 함유 행을 삭제하려면 :

+1

삭제하면 무엇을 의미합니까? – fpe

+0

이봐, 내가 spesific 값을 포함하는 전체 행을 지우는 의미 제거 :) 만약 내가 3에 의해 - 3 매트릭스 A = [1 0 0; 2 5 4; 7 8 8]; 그리고 숫자 7을 포함하는 모든 행을 제거하려면 내 축소 행렬은 A = [1 0 0; 2 5 4]; – jjepsuomi

답변

4

다음과 같이 행을 선택할 수의 당신이 그런 A

A = [1 2 3;4 5 0; 7 8 9; 10 NaN 12] 

A = 

    1  2  3 
    4  5  0 
    7  8  9 
    10 NaN 12 

있다고 가정 해 봅시다

A(any(isnan(A')),:) = [] 

A = 

    1  2  3 
    4  5  0 
    7  8  9 

0 포함 행을까지 선택할 수 있습니다.. 모든 요소가 0 또는 NaN이되도록하려면 any 대신 all을 사용할 수 있습니다.

+0

고마워요! 내가 뭘 찾고 있었는지 =) – jjepsuomi

관련 문제