두 개의 열 (V1, V2)이 키로 설정된 data.table이 있습니다. 세 번째 열에는 여러 값이 있습니다.R data.table - 2 개의 열로 구성된 키로 여러 행 검색
나는 첫 번째 테이블 키에서 검색하고자하는 쌍으로 또 다른 data.table을 가지고 V3에서 목록의 연합 목록을 반환합니다.
locations<-data.table(c(-159.58,0.2,345.1),c(21.901,22.221,66.5),list(c(10,20),c(11),c(12,33)))
setkey(locations,V1,V2)
searchfor<-data.table(lon=c(-159.58,345.1,11),lat=c(21.901,66.5,0))
최종 결과는 다음과 같아야합니다
[1] 10 20 12 33
다음 작품은 단지 하나 개의 항목을 검색 할 때.
locations[.(-159.58,21.901),V3][[1]]
[1] 10 20
나는 이것을 일반화 테이블이 BTW 검색된 인덱스 (에 대한 소스로 "searchfor"를 사용하는 방법을 모른다 - (가) 테이블을 다른 형식으로 변경할 수 있습니다 "searchfor"는 솔루션 쉽게 경우). 또한 V3에서 다른 값을 통합하여 하나의 목록으로 (잘하면) 수신 할 수 있습니까?
간단히'위치 [searchfor, V3를]'또는'위치'(명시하는 것을 [(searchfor), V3는.] 바이너리 검색 기능 사용). – Arun
이것은 앞으로 큰 발전 (감사합니다 @ Arun!),하지만 내가 필요로하는 것은 아닙니다. 최종 결과는 V3에서 발견 된 값 목록이어야합니다. 원본 질문에이 정보를 추가하겠습니다. – KeshetE
[this post] (http://stackoverflow.com/a/27543075/559784)의 전반부는 data.table의 하위 집합/조인을 이해하는 데 매우 유용 할 수 있습니다. – Arun