我试图测试从64个对象中随机选择的24个样本的标准误差,但是当我尝试运行10次时,它会给出10个相同的答案。用重复测试它的正确方法是什么? 这是我的代码和结果。
po=c(900,822,781,805,670,1238,573,634,578,487,442,451,459,464,400,366,364,317,328,302,288,291,253,291,308,272,284,255,270,214,195,260,209,183,163,253,232,260,201,147,292,164,143,169,139,170,150,143,113,115,123,154,140,119,130,127,100,107,114,111,163,116,122,134)
se_1 = sd(sample(po[1:64],24,replace = FALSE)) * sqrt(1/24)
rep(se_1, times=10)
#[1] 44.69907 44.69907 44.69907 44.69907 44.69907 44.69907 44.69907 44.69907
#[9] 44.69907 44.69907
答案 0 :(得分:2)
使se_1
具有功能
se_1 <- function() sd(sample(po[1:64],24,replace = FALSE)) * sqrt(1/24)
那么你可以
replicate(se_1(), times=10)
或者您可以做
replicate(sd(sample(po[1:64],24,replace = FALSE)) * sqrt(1/24), times=10)
replicate()
接受一个您想重复调用的表达式,而rep()
只是重复一个或多个现有值一定次数。它不计算“新”值。