2011-07-05 7 views
8

예를 들어 df$V1, df$V2, df$V3 등 세 개의 변수가있는 R 데이터 프레임이 있습니다. df$V1df$V2은 모두 요인이며, df$V3은 숫자입니다.R : 데이터 테이블을 테이블로 변환

df <- data.frame(
    V1 = letters[1:4], 
    V2 = rep(LETTERS[1:3], each = 4), 
    V3 = 1:12 
) 

나는 열과 행으로 df$V1df$V2로, df$V3의 값을 포함하는 테이블을 만드는 방법을 찾고 있어요.

나는 테이블에 변형을 시도했지만 어디에도 가지 않았다. 누군가 도움이 될 수도 있습니다. 미리 감사드립니다. Davy.

+0

이 [유사한 질문 (http://stackoverflow.com/a/9617424/210673) 현재의 목록을 갖는다 이 작업을 수행하는 다양한 방법 – Aaron

답변

17

이다 : 다음은 예이다

xtabs(V3 ~ V1 + V2, df) 
6

ran2에서 언급했듯이 reshape 패키지를 사용할 수 있습니다. 이 table 대안이

df <- data.frame(V1 = factor(sample(letters[1:5],100,replace=TRUE)), 
       V2 = factor(toupper(sample(letters[1:5],100,replace=TRUE))), 
       V3 = runif(100)) 
library(reshape) 
cast(df, V1 ~ V2, mean) 
+3

'reshape2'도 훨씬 빠릅니다. – hadley

관련 문제