R:如何在不替换且没有连续相同值的情况下进行采样
我花了整整一天的时间来完成似乎很简单的事情。我必须创建300个“随机”序列,其中数字1,2、3和4都恰好出现12次,但是同一数字永远不会“连续”使用两次。 我最好的尝试是: 有R个样本,其中48个项目没有替换,请使用rle测试是否存在连续值,然后仅使用不包含连续值的序列。问题:几乎没有符合此标准的随机序列,因此要花很长时间。 具有R个创建序列而没有连续值(请参见代码)。 pop<-rep(1:4,12) y=c() while(length(y)!=48) { y= c(y,sample(pop,48-length(y),replace=F)) y=y[!c(FALSE, diff(y) == 0)] } 问题:这将创建每个值具有不同数量的序列。然后,我尝试仅使用每个值正好为12的那些序列,但这仅使我回到问题1:花了很长时间。 必须有一些简单的方法来执行此操作,对吗?任何帮助是极大的赞赏!