r - 从均值为 5、标准差为 3 的正态分布中模拟 5000 个大小为 5 的样本

标签 r functional-programming

我正在尝试从均值为 5 且标准差为 3 的正态分布中模拟 5000 个大小为 5 的样本。然后我想计算每个样本的均值并制作样本均值的直方图

我当前的代码没有给我错误,但我认为它不对:

nrSamples = 5000
e <- list(mode="vector",length=nrSamples)
for (i in 1:nrSamples) {
e[[i]] <- rnorm(n = 5, mean = 5, sd = 3)
}

sample_means <- matrix(NA, 5000,1)
for (i in 1:5000){
sample_means[i] <- mean(e[[i]])
}

关于如何解决这个问题的任何想法?我对 R 非常陌生!

最佳答案

在这种情况下您不需要列表。过度使用列表是新 R 用户的一个常见错误。

observations <- matrix(rnorm(25000, mean=5, sd=3), 5000, 5)
means <- rowMeans(observations)

现在 表示 是一个包含 5000 个元素的向量。

关于r - 从均值为 5、标准差为 3 的正态分布中模拟 5000 个大小为 5 的样本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37150537/

相关文章:

r - LME 向后选择,反向求解出现奇点

r - 如何将结构化文本转换为 R 中的数据列?

javascript - 带状态的 ifElse 语句?

haskell - Haskell Alternative 中 "some"和 "many"函数的定义是什么意思

javascript - 有没有办法在 Javascript 中进行可变递归柯里化(Currying)?

ggplot 的 R Shiny Interactive 绘图标题

r - 排序和呈现我的数据的问题 - tapply 和图形问题

r - R - S 和 F 计数中的 bestglm 问题不能 <0

javascript - 是否有 lodash 函数或 'lodash way' 来执行条件 _.map?

arrays - Swift:将一组字典扁平化为一个字典