벡터

2014-05-24 6 views
4

에 NA 값의 인덱스를 찾기 나는 다음과 같은 벡터가 :벡터

x <- c(3, 7, NA, 4, 8) 

을 그리고 난 그냥 벡터의 NA의 인덱스를 알고 싶어요. 예를 들어, 내가 7의 인덱스를 알고 싶어, 경우, 다음 코드는 작동합니다 :

> which(x == 7) 
[1] 2 

나는 그것이 이상한 것을 발견 나에게 포기하지 않는 NA의 인덱스를 찾기 위해 노력하고 동일한 코드를 실행하는 원하는 결과.

> which(x == NA) 
integer(0) 

은 또한 다음과 같은 시도했지만 작동하지 않습니다 :

> which(x == "NA") 
integer(0) 

가 당신의 도움이 많이

을 이해할 수있을 것이다. 문제는 @ccapizzano 아래 대답했습니다,하지만 코드는 위의 작동하지 않는 이유 사람이 설명 할 수

편집?

+0

@ 벤, 금 배지 강대국의 좋은 사용. –

+1

@SavedByJESUS''NA ''는 문자이고'NA'는 특별한 변수 형입니다. '=='를 사용하여 'NA'를 비교하는 것은 불가능합니다. 이 목적을 위해서 당신은'is.na' 함수를 가지고 있습니다. '=='를 사용하여 'NA'와 비교하면 NA가됩니다 (NA가 아닌 인덱스를 원하게됩니다). 다음을 시도하십시오 :'NA == "NA"'AND'NA == NA' –

답변

14

당신은 다음과 같은 방식으로 whichis.na 기능을 사용하여 시도 할 수 있습니다 :

which(is.na(x)) 
[1] 3 
+0

대단히 감사합니다. – SavedByJESUS