2016-06-08 3 views
1

I를 사용하여 요인의 각 수준에 대해 다른 수의 임의의 행을 샘플링합니다. 요인의 각 수준에서 임의의 표본을 추출하려고합니다. 각 요소 수준마다 다른 수의 관찰이 있습니다. 각 단계마다 절반 정도의 관측치로 샘플을 만들고 싶습니다. 내가 잘못 N을 사용하고 제안 : (이 기능은 직접를 호출 할 수 없습니다 N()에서 오류) 위의 데이터를 사용하여은 dplyr

library(dplyr) 
dat <- data.frame(ID = rep(c("AAA", "AAA","AAA","BBB","BBB","CCC"), length = 100), 
        Value = sample(1:100, replace = T)) 

, 그것은 다음과 같은 거의 작동합니다 같은 것처럼 보이지만 오류가() 함수를 호출합니다.

Samp <- dat %>% group_by(ID) %>% sample_n(size = n()/2) 

미리 감사드립니다.

답변

4

sample_frac()보십시오 :

library(dplyr) 
Samp <- dat %>% group_by(ID) %>% sample_frac(.5)