【问题标题】:How to update code for 1000 random sample of size 25 to 1000 resamples of one random sample of size 25如何将 1000 个大小为 25 的随机样本的代码更新为一个大小为 25 的随机样本的 1000 个重采样
【发布时间】:2019-04-14 17:07:30
【问题描述】:

我目前的代码演示了为 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)
}

【问题讨论】:

    标签: r data-science data-analysis


    【解决方案1】:

    这将从大小为 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)
    }
    

    【讨论】:

    • 所以这将替换 for 循环中的第一条语句对吗?
    • 这替换了for 循环。您不能在一次抽签中计算meanvar...我将您的帖子解释为想要从相同的伽马分布数字样本中进行 1000 次抽签。如果这不正确,请更新您的帖子
    • 啊,是的,我不明白,是的,我不确定如何重新执行 for 循环。这正是我想要的,谢谢!
    猜你喜欢
    • 2019-03-28
    • 2017-11-14
    • 1970-01-01
    • 2016-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多