问题描述
您好,我对 R 比较陌生。我参加了大约 2 个月的课程,但我实际上并没有真正定期应用我的技能。幸运的是,我正在参加一门促使我去做的统计课程(我对此感到非常兴奋)。
无论如何,我想知道人们会以不同的方式来解决这个问题。这是我目前所拥有的(不多):
z <- runif(n = 100,min= 0,max = 1)
mean(z)
我知道这并不多,但我确实怀疑有几种方法可以做到这一点。我认为可以有效完成的方法是运行 for 循环。例如
times <- 10000
for (i in 1:times){runif(n=100,min = 0,max =1)}
我知道这可能甚至不接近正确,这就是我在这里问的原因。任何指导表示赞赏。谢谢。
重要的是,我主要指的是 b 部分)。
解决方法
我不知道我是否理解你想要做什么,但使用循环对我来说似乎很好。
如果您想获得 10000 个样本中每个样本的均值和方差,那么这应该可行:
mean_and_variance <- function(times)
{
res <- matrix(rep(0,times*2),nrow = times,ncol = 2)
for (i in 1:times)
{
z <- runif(n=100,min = 0,max =1)
res[i,] <- c(mean(z),var(z))
}
colnames(res) <- c("mean","variance")
return(res)
}
res
是维度乘以*2的矩阵。每行对应于循环中生成的样本的一对(均值、方差)。
如果我不太明白你的问题,请随时告诉我。
最好的问候