예제를 사용하여 쉽게 설명 할 수 있습니다. , "C", "D"목록 (C (5,3,4,3,6), C ("A", "B"-다른 유형을 포함하는 목록 또는 개체 정렬 R
의 < : 의 내가 목록의 있다고 가정 해 봅시다 , "E"))
s는 모든 하위 벡터에 대해 항상 같은 수의 개체를가집니다. NA 값은 허용되지 않습니다. 벡터에는 여러 유형이 있습니다.
내가 달성하고자하는 것은 :
rank v1 v2
1 3 "B"
2 3 "D"
3 4 "C"
4 5 "A"
5 6 "E"
기본적으로 (오름차순) 최초의 벡터를 기반으로 목록을 정렬하고 (넥타이 경우) lexicological를 사용하여 두 번째 벡터에보고 주문. C++ 세계에서 유일해야 할 일은 제 오브젝트에 대해 연산자 <을 정의하는 것입니다. 그러나 저는 R의 새로운 것이므로 아이디어가 부족합니다.
내가 찾은 최고의 전략은 요소를 반복하고 각 커플에 대한 순위 값 (double)을 계산하는 것입니다 (예 : 3 "B"가 가장 높은 순위와 6 "E"로 표시됨) 결과를 다른 벡터에 저장하고 정렬합니다. 그러나 좋은 순위 함수를 찾는 것이 까다로울 수 있고 일반화하기가 쉽지 않기 때문에 솔루션은 훌륭하지 않습니다.
나는 더 나은 방법이어야한다는 그런 공통적 인 문제가있는 것처럼 보입니다. 누구든지 올바른 방향으로 나를 가리킬 수 있습니까?
도움 주셔서 감사합니다.
'do.call (order, s)'는 많은 열이 있고'order'에 전달할 때와 같은 순서로 사용할 수 있습니다. –
감사합니다. 이것은 완벽합니다. –