여러 데이터를 하나의 필드 (예 : 상태 별)별로 그룹화하여 적용한 것처럼 보입니까?
이렇게하는 방법에는 여러 가지가 있습니다. this related question을 참조하십시오.
해들리 위컴의 reshape
패키지를 사용할 수 있습니다 (reshape homepage 참조). 예를 들어, 당신은 (이 의미가 있지만,이 모양 변경에서 airquality 데이터를 사용) 값으로 그룹화 된 일부 데이터에 적용되는 평균, 합계 및 카운트 기능을 원하는 경우 :
> library(reshape)
> names(airquality) <- tolower(names(airquality))
> # melt the data to just include month and temp
> aqm <- melt(airquality, id="month", measure="temp", na.rm=TRUE)
> # cast by month with the various relevant functions
> cast(aqm, month ~ ., function(x) c(mean(x),sum(x),length(x)))
month X1 X2 X3
1 5 66 2032 31
2 6 79 2373 30
3 7 84 2601 31
4 8 84 2603 31
5 9 77 2307 30
또는 당신이 by()
을 사용할 수 있습니다 기능. 인덱스는 상태를 나타냅니다. 귀하의 경우에는 하나의 기능 (예 : 평균)을 적용하는 대신 여러 가지 작업 (필요에 따라)을 수행 할 자신의 기능을 적용 할 수 있습니다 (예 : function(x) { c(mean(x), length(x)) }
). 그런 다음 출력에 do.call("rbind"
(예 :)을 실행하십시오.
또한 Sweave (xtable 포함) 또는 Jeffrey Horner's brew package과 같은보고 패키지 사용에 대해 고려할 수 있습니다. 사용 방법을 보여주는 great post on the learnr blog about creating repetitive reports이 있습니다.
그냥 빨리 발언은'each'뿐만 아니라 열 이름을 담당한다. 가장 간단한 방법은 'c'를 사용하는 것입니다. 'cast (aqm, month ~., c (mean, sum, length)') – learnr