2014-10-10 3 views
1

어쩌면 전체 바보가 아닌 질문 철학을 테스트하고 있지만 데이터 테이블의 열을 다른 데이터 테이블로 하위 집합하는 방법에 대해 누군가 나를 직접 설정할 수 있습니까?부분 집합 데이터 테이블에서 데이터 테이블 반환

아래에서이 데이터 테이블을 만들고 여기에 세 개의 열 중 두 개의 열만있는 새로운 데이터 테이블을 원한다고 가정 해 보겠습니다.

example <- data.table(c("Bob","May","Sue","Bob","Sue","Bob"), 
         c("A","A","A","A","B","B"), 
         as.Date(c("2010/01/01", "2010/01/01", "2010/01/01", 
         "2012/01/01", "2012/01/11", "2014/01/01"))) 

내가 그의 데이터 테이블 - 자주 묻는 질문 (http://cran.r-project.org/web/packages/data.table/vignettes/datatable-faq.pdf) 섹션 1.3 및 1.4의 이해하기 위해 노력하고있어 나는 내 결과가 새로운 데이터 테이블이 아닌 문자 벡터가 될 것. 의 FAQ에 따르면이 DT의 사용을 통해 달성된다,().] 그러나 그 수율 내 시도 :

example[,.(V2,V3)] 
Error in eval(expr, envir, enclos) : could not find function "." 

나는 생각했다, 그것은 문제를 버전의 일종처럼 나 보이지만, 나는 R의 최신 버전을 가지고 있고 그 FAQ는 1 주일 전에 업데이트되었다.

호기심에서 벗어나 다른 사람이 데이터 테이블을 하위 설정하는 기본 결과가 다른 데이터 테이블이 아닌 이유를 아는 사람이 있습니까? 나는 R에 익숙하다. (분명히) 프로그래밍을하는 사람에게 이것은 둔감 해 지기만하는 것처럼 보인다.

+2

j에서'.()'는 1.9.4부터 새로운 기능인'list()'에 대한 * 별칭입니다. data.table 버전을 업데이트하십시오. – Arun

+1

충분합니다. 내가 생각한 것은 R Studio의 패키지 업데이트 드롭 다운에서 모두 설치하여 사용하면 아무런 문제가 없습니다. 어쨌든 다시 감사드립니다. –

답변

3

data.table 패키지의 최신 버전을 설치 한 다음로드 했습니까?

install.packages('data.table') 
require(data.table) 

example <- data.table(c("Bob","May","Sue","Bob","Sue","Bob"), 
         c("A","A","A","A","B","B"), 
         as.Date(c("2010/01/01", "2010/01/01", "2010/01/01", 
           "2012/01/01", "2012/01/11", "2014/01/01"))) 


example[,.(V2,V3)] 
# V2   V3 
#1: A 2010-01-01 
#2: A 2010-01-01 
#3: A 2010-01-01 
#4: A 2012-01-01 
#5: B 2012-01-11 
#6: B 2014-01-01 

CRAN에서 최신 버전으로 업데이트되었으므로 이전 버전의 테이블이있을 수 있습니다. Arun의 코멘트를 참조하십시오.

관련 문제