运行rgeom样本并存储每个复制的平均值和SD

运行rgeom样本并存储每个复制的平均值和SD,r,random,sample,R,Random,Sample,尝试运行follow rgeom 500次,并存储每个复制的平均值和sd rgeom(100, prob = .2) 到目前为止,我已经: geom_means = rep(NA, 500) geom_sd = rep(NA, 500) X_geom500 <- replicate(500, { samp <- rgeom(100, prob = .2) geom_means = round(mean(samp),2) }) X_geom500_sd <- rep

尝试运行follow rgeom 500次,并存储每个复制的平均值和sd

rgeom(100, prob = .2)
到目前为止,我已经:

geom_means = rep(NA, 500)
geom_sd = rep(NA, 500)
X_geom500 <- replicate(500, {
  samp <- rgeom(100, prob = .2)
  geom_means = round(mean(samp),2)
})


X_geom500_sd <- replicate(500, {
  samp <- rgeom(100, prob = .2)
  round(sd(samp),2)
})

geom_means=rep(NA,500)
geom_sd=代表(NA,500)

X_geom500您可以从每次复制中获得平均值和sd:

set.seed(123)

n_rep <- 5

samp_geom <- function(n, prob) {
  samp <- rgeom(n, prob)
  return(list(mean = round(mean(samp), 2), sd = round(sd(samp, 2))))
}

replicate(n_rep, samp_geom(100, .2))

     [,1] [,2] [,3] [,4] [,5]
mean 3.78 3.64 4.09 3.68 3.73
sd   4    4    5    5    4  
set.seed(123)

n_rep谢谢@andrew_reece。问题是我需要每个均值和标准差的存储向量,而不仅仅是它们的列表。我最终需要创建一个平均值的柱状图并计算样本的期望值。我不确定你所说的“存储向量”是什么意思,你能用一些示例预期输出(至少是格式)更新你的帖子吗?对不起。我的意思是应该有一个geom_means的值=每个geom复制的平均值。然后,geom_sd的值=每个geom复制的sd。这样我就可以把每个值列表放在一个表或矩阵中。好吧,我更新了,但不确定这是不是你的意思?它只是将向量从
replicate()
输出中取出,并将它们存储在单独的变量中……不确定我是否遗漏了什么。
set.seed(123)

n_rep <- 5

samp_geom <- function(n, prob) {
  samp <- rgeom(n, prob)
  return(list(mean = round(mean(samp), 2), sd = round(sd(samp, 2))))
}

replicate(n_rep, samp_geom(100, .2))

     [,1] [,2] [,3] [,4] [,5]
mean 3.78 3.64 4.09 3.68 3.73
sd   4    4    5    5    4  
geom_means <- unlist(samps["mean", ])
geom_means
# [1] 3.78 3.64 4.09 3.68 3.73

geom_sd <- unlist(samps["sd", ])
geom_sd
# [1] 4 4 5 5 4