2
나머지 요약 통계가 각 그룹의 열 값 차이가되도록 그룹 전체에 여러 열을 축소하려고합니다. 두 가지 방법이 있지만 나는이 일을해야한다는 더 좋은 방법이 있다는 느낌을 가지고 있습니다.dplyr을 사용하는 그룹 간의 차이를 기반으로하는 열 축소
test %>%
gather(key,val,val:val2) %>%
spread(id,val) %>%
mutate(B.less.A = B - A) %>%
select(-c(A,B)) %>%
spread(key,B.less.A)
tidyr summarize_each 방법을 사용하여
예 데이터 summarize_each
test %>%
group_by(year) %>%
summarize_each(funs(.[id == "B"] - .[id == "A"]), val, val2)
를 사용
library(dplyr)
library(tidyr)
test <- data.frame(year = rep(2010:2011, each = 2),
id = c("A","B"),
val = 1:4,
val2 = 2:5,
stringsAsFactors = F)
는 비교적 간단한데하지만 난 그룹화하여이 작업을 수행 할 수있는 방법이 느낌 어떻게 든 이드는? 열의 NA 값을 무시할 수있는 방법이 있습니까?
'테스트 %> % GROUP_BY (년) %> % summarise_at (바르 (-id), 차이)'를 사용할 수 있습니까? 나는 네가 원하는 것을 확신하지 못한다. 2 회 미만의 통화로 처리하기가 어려울 것입니다. – alistaire
@alistaire, 모든 그룹이 항상'id'에 의해 똑같은 방식으로 정렬되도록하기 위해서'(id)'배열을 원할 수도 있습니다. – eipi10
사실, 데이터가 취할 수있는 가능한 조치가 확실하지 않습니다. 순서가 잘못되었거나'year'와'id'에 둘 이상의 행이 있거나 다른'id'가있는 경우 더 많은 정리가 순서대로 이루어집니다. – alistaire