创建一个从均匀随机变量 10000x 重复抽取的函数,并计算每次抽取的样本均值和方差 (R)
Creating a function that repeatedly draws from a uniform random variable 10000x and calculating the sample mean and variance for each draw (R)
Question at hand
你好,我是 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的矩阵。每行对应于循环中生成的样本的一对(均值,方差)。
如果我不太理解你的问题,请随时告诉我。
此致
Question at hand
你好,我是 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的矩阵。每行对应于循环中生成的样本的一对(均值,方差)。
如果我不太理解你的问题,请随时告诉我。
此致