2014-12-29 3 views
-2

을 나는 다음과 같은 명령을 가지고 :헤드 기능이 작동하지 않습니다 - R

temp <- sort(menVSwomen,decreasing = FALSE, index.return=TRUE) 

임시 지금 menVSwomen의 분류에 의한, 10000 개 인덱스가 포함되어 있습니다. head(temp, 100)을 사용하여 상위 100 개를 추출하려고하는데 작동하지 않습니까?! 놀랍게도 전체 벡터를 반환합니다. 무슨 일 이니?

또한 head(as.vector(temp),100)n=100을 사용하여 시도했지만 여전히 전체 임시 온도를 반환합니다. 도움!

아마도 menVSwomen 벡터에서 100 개의 가장 낮은 값의 인덱스를 얻으려고합니다. 내 문제와 관련하여 다른 방법이 있다면 의견을 말하십시오.

List of 2 
$ x : Named num [1:10000] 0.000176 0.000249 0.000412 0.000575 0.000604 ... 
..- attr(*, "names")= chr [1:10000] "1542" "2693" "4840" "3329" ... 
$ ix: int [1:10000] 1542 2693 4840 3329 5257 5292 8844 8368 2082 8486 ... 
+0

''temp'의'STR()가 무엇을 @CephBirk 간다? – CephBirk

+0

@CephBirk 요청한 후 내 질문을 편집했습니다. –

+1

temp가리스트이기 때문에 아마도'lapply (temp, head, 100)'를 원할 것이다. 목록에서'head'를 호출하면 기본적으로 첫 번째 6 개의 목록 요소가 반환됩니다. 따라서 당신은 두 개의 원소 만 가지고 있기 때문에 전체 목록을 보게 될 것이다. –

답변

1

가 실제로 문제가 무엇인지 정렬 함수가 반환에서 유래 :

는 STR (온도)의 출력이다. str(temp) 출력을 보면 sort는 2의 목록을 반환합니다! $ ix에있는 것만 있으면됩니다. 내가 사용 해결 방법은 간단하다 :

head(temp$ix,n=100) 

신용은

+0

이것은 rep의 가치가있는 것보다 더 많은 사용자 오류입니다. '목록'이 무엇인지 알아보십시오. –

관련 문제