2017-12-04 3 views
0

관측치의 50 %가 흰색이고 50 %가 아프리카 계 미국인 인 샘플이 있습니다.관찰 유형의 고정 비율로 층화 표본 추출 R

나는 그 비율을 80 % White와 20 % African American으로 수정 한 임의의 하위 표본을 얻고 싶습니다.

나는 층화 층화를 시도했지만 계층화 기준에 공유를 할당 할 수있는 옵션을 찾을 수 없습니다.

도움을 주셔서 감사합니다.

답변

0

그럼 백인과 아프리카 계 미국인의 데이터를 필터링 한 다음 각 하위 집합에서 선택하십시오.

## 80% of the white sample 
    smp_size <- floor(train_ratio * nrow(df_white)) 

    ## set the seed to make your partition reproductible 
    set.seed(42) 
    data_ind_w <- sample(seq_len(nrow(df_white)), size = smp_size) 

와 아프리카 계 미국인

## 20% of the african sample 
    smp_size <- floor(train_ratio * nrow(df_african)) 

    ## set the seed to make your partition reproductible 
    set.seed(42) 
    data_ind_a <- sample(seq_len(nrow(df_african)), size = smp_size) 

에 대한

는 새로운 데이터를 먹으 렴

new_data <- c(white[data_ind_w,],african[data_ind_a,]) 
0

원래 데이터 세트는 100 행 (흰색 50, 50 아프리카 계 미국인) 80 %를 가지고 있다면 40 샘플, 20 %는 10 샘플이됩니다. 이 값을 알고 있으면 시도 할 수 있습니다 : stratified(mydf, "group", size = c("White" = 40, "African-American" = 10)).

예 :

mydf <- data.frame(group = rep(c("White", "African-American"), each = 50), value = 1:100) 
mydf 
library(splitstackshape) 
set.seed(1) 
x <- stratified(mydf, "group", size = c("White" = 40, "African-American" = 10)) 
summary(x) 
#    group  value  
# African-American:10 Min. : 1.00 
# White   :40 1st Qu.:15.25 
#      Median :31.00 
#      Mean :34.88 
#      3rd Qu.:47.50 
#      Max. :93.00