我目前使用的代码演示了如何为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)
}
答案 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)
}