R !!!simpleboot *ブートストラッピング !!one.boot: One sample bootstrap of a univariate statistic * サンプル数が少ない場合、そのサンプルからリサンプリング(無作為復元抽出)して、サンプル数を「増やして」、推定の精度を上げる。 one.boot(手元にあるデータ, 何を推定したいか, リサンプリングの回数) !データが60個しかないと、正規分布しているかどうか判断しづらい。 * 検定すると、正規分布していると結論付けられない。 {{pre > score.dat <- sugi_iwa.dat %>% dplyr::filter(cond=="control") %>% dplyr::pull(score) > str(score.dat) num [1:60] 75 70 40 55 85 55 85 10 70 55 ... > shapiro.test(score.dat) Shapiro-Wilk normality test data: score.dat W = 0.89087, p-value = 6.212e-05 }} {{ref_image score.dat.png}} !500回、繰り返してブートストラップして確認する。 {{pre > score.dat.boot <- one.boot(score.dat, mean, 500) > str(score.dat.boot) (前略) $ t0 : num 67.1 $ t : num [1:500, 1] 69 65 68.5 64.9 67.8 ... $ R : num 500 $ data : num [1:60] 75 70 40 55 85 55 85 10 70 55 ... (後略) > shapiro.test(score.dat.boot$t) Shapiro-Wilk normality test data: score.dat.boot$t W = 0.99839, p-value = 0.9299 }} {{ref_image score.dat.boot.png}}