如何将大小为25的1000个随机样本的代码更新为大小为25的一个随机样本的1000个重采样

时间:2019-04-14 17:07:30

标签: r data-science data-analysis

我目前使用的代码演示了如何为R中的分布Gamma(5,1)提取1000个大小为25的随机样本。我的问题是更新此代码以表示从1个随机样本中提取1000个重采样(带替换)。相同分布的25号样本。

我已经说过,我已经有代码可以对Gamma(5,1)进行1000个大小为25的随机样本

set.seed(35)
n <- 25
alpha <- 5
beta <- 1
sample.n <- 0
xbar.n <- 0
vars.n <- 0
k=1000
for (i in 1:k){
  sample.n <- rgamma(n, alpha, scale=beta)
  xbar.n[i] <- mean(sample.n)
  vars.n[i] <- var(sample.n)
}

1 个答案:

答案 0 :(得分:0)

这将从大小为25的单个rgamma分布中产生1000次抽奖。

sample(size = 1000, x = rgamma(n, alpha, beta), replace = TRUE)

更新:

根据您的评论,我认为这是想要的:

xbar.n <- vector("numeric", k)
vars.n <- vector("numeric", k)
rgdist <- rgamma(n, alpha, scale=beta) ##This generates the gamma 
for (i in 1:k){
  sample.n <- sample(size = n, x = rgdist, replace=T)
  xbar.n[i] <- mean(sample.n)
  vars.n[i] <- var(sample.n)
}