my_sample = c(1, 1, 2, 3, 5) B = 1000 resample_means = array(0, dim=c(B)) for(i in 1:B){ boot = sample(my_sample, 5, replace=TRUE) resample_means[i] = mean(boot) } o = order(resample_means) resample_means[o[floor(.025*B)]] resample_means[o[ceiling(.975*B)]] mean(my_sample) mean(my_sample) - (resample_means[o[ceiling(.975*B)]] - mean(my_sample)) mean(my_sample) - (resample_means[o[floor(.025*B)]] - mean(my_sample))