【发布时间】:2017-06-22 05:49:09
【问题描述】:
我有一个包含 663 个元素的向量。我想从等于向量长度(即 663)的向量中创建随机样本。换句话说,我想从 663 个元素的所有可能排序中随机抽取样本。我的目标是创建 N 个随机样本或随机选择的排列的数据框。
我尝试了以下方法:
library(combinat)
perms <- as.data.frame(permn(1:663))
由于有很多可能的排列,我会收到一条错误消息。
我的下一个想法是创建一个数据框,其中包含与我想要的样本/排列一样多的行以及与元素一样多的变量(即 663),并使用sapply() 和sample() 之类的函数。但是,我认为这种方法效率不高。
我也试过了:
samples <- replicate(100, table(sample(1:663, 663,replace = F)))
但我只得到一个包含 100 列的数据框。
【问题讨论】:
-
因为您使用的是
table。当您使用replace=FALSE时,频率仅为 1
标签: r random permutation sampling