如何在一个向量中生成几个重复数字的随机块?

时间:2017-10-11 17:59:24

标签: r random

这在R中应该很容易,但我无法想到解决方案。让我们说我想要生成一个在三个数字之间随机变化的序列:-1,0和1.这很容易完成:

set.seed(1)
dat <-rep(c(-1,0,1),20)
dat
[1] -1  0  1 -1  0  1 -1  0  1 -1  0  1 -1  0  1 -1  0  1 -1  0  1 -1  0  1 -1  0  1 -1  0  

但是我如何使用rep()或类似的东西生成具有这三个数字的序列,以便比如说&#34; 1&#34;以相对较长的连续序列重复 - 例如,在该示例中连续5次。

我最终要做的是创建一个在-1,0和1之间变化的向量,对任何给定数字的显着偏差可以连续重复,例如25%到50%向量的长度,以及0和1的另一个偏差。

通过上图说明的示例输出I的一部分可能是:

0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 -1 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 

有什么建议吗?非常感谢!

0 个答案:

没有答案