首页 文章

重复一个过程1000次并创建一个图

提问于
浏览
1

让我们从一些数据开始:

df <- rnorm(30)

我想随机抽样1000次 df 每次获得5个数字而不重复并计算其变异系数( cv ):

sample_df <- sample(df, 5, replace = F) 
cv <- (sd(sample_df) / mean(sample_df)) * 100

所以现在 . 我想重复最后两行代码的1000次,所以我会得到1000个系数 . 我该怎么做?

稍后,我想合并所有系数并绘制直方图或密度图 .

1 回答

  • 2

    我们可以将代码放在支架内并使用 replicate

    n <- 1000
    out <- replicate(n, {sample_df <- sample(df, 5, replace = FALSE)
                   sd(sample_df)/mean(sample_df) * 100})
    hist(out)
    

    编辑:基于@Ben Bolker的评论

相关问题