Systematyczne próbkowanie w r (z przykładami)
Naukowcy często pobierają próbki z populacji i wykorzystują dane z próbki do wyciągania wniosków na temat populacji jako całości.
Powszechnie stosowaną metodą pobierania próbek jest systematyczne pobieranie próbek , które realizuje się w prostym dwuetapowym procesie:
1. Ułóż każdego członka populacji w określonej kolejności.
2. Wybierz losowy punkt początkowy i wybierz jednego członka spośród n, który będzie częścią próby.
W tym samouczku wyjaśniono, jak przeprowadzać systematyczne próbkowanie w języku R.
Przykład: systematyczne pobieranie próbek w R
Załóżmy, że dyrektor chce pobrać próbę składającą się ze 100 uczniów ze szkoły, w której uczy się ogółem 500 uczniów. Decyduje się zastosować dobór systematyczny, w którym umieszcza każdego ucznia w kolejności alfabetycznej na podstawie jego nazwiska, losowo wybiera punkt wyjścia i wybiera co piątego ucznia do próby.
Poniższy kod pokazuje, jak utworzyć fałszywą ramkę danych do pracy w R:
#make this example reproducible set.seed(1) #create simple function to generate random last names randomNames <- function (n = 5000) { do.call(paste0, replicate(5, sample(LETTERS, n, TRUE), FALSE)) } #create data frame df <- data.frame(last_name = randomNames(500), gpa = rnorm(500, mean=82, sd=3)) #view first six rows of data frame head(df) last_name gpa 1 GONBW 82.19580 2 JRRWZ 85.10598 3 ORJFW 88.78065 4 XRYNL 85.94409 5 FMDCE 79.38993 6 XZBJC 80.49061
Poniższy kod pokazuje, jak uzyskać próbę 100 uczniów poprzez systematyczne pobieranie próbek:
#define function to obtain systematic sample obtain_sys = function (N,n){ k = ceiling(N/n) r = sample(1:k, 1) seq(r, r + k*(n-1), k) } #obtain systematic sample sys_sample_df = df[obtain_sys( nrow (df), 100), ] #view first six rows of data frame head(sys_sample_df) last_name gpa 3 ORJFW 88.78065 8 RWPSB 81.96988 13 RACZU 79.21433 18 ZOHKA 80.47246 23 QJETK 87.09991 28 JTHWB 83.87300 #view dimensions of data frame dim(sys_sample_df) [1] 100 2
Należy zauważyć, że pierwszy element zawarty w próbie znajdował się w wierszu 3 oryginalnej ramki danych. Każdy kolejny element próbki znajduje się 5 linii po poprzednim elemencie.
Używając dim() możemy zobaczyć, że otrzymaną próbkę systematyczną stanowi ramka danych składająca się ze 100 wierszy i 2 kolumn.
Dodatkowe zasoby
Rodzaje metod pobierania próbek
Próbkowanie warstwowe w R
Próbkowanie klastrów w R