R复制函数而不重复绘制的数字

时间:2018-04-04 19:40:37

标签: r

我正在寻找乐透功能,这意味着所绘制的数字不会被重复。如果我尝试

y <- replicate(39,sample(1:39,1,replace=FALSE))

y <- replicate(39,sample(1:39,1,replace=TRUE))

绘制的数字正在重复。 我该如何防止这种情况?

3 个答案:

答案 0 :(得分:1)

试试sample(1:39, 39, replace = FALSE)。检查?sample

答案 1 :(得分:1)

请勿使用replicate。要获得39次无需重复的绘制,请使用 sample(1:39, size = 39, replace = FALSE)(或使用默认值, sample(39))。

答案 2 :(得分:1)

从内到外工作。

sample(1:39, 1, replace = FALSE)

随机统一从1:39中选取一个数字。 replace = FALSE没有任何意义,因为你只是画了一个数字。

现在

replicate(39, sample(1:39, 1, replace = FALSE))

只复制39次。所以没有理由期望没有重复。

你没有确切地说出你要模拟的乐透游戏。但通常的情况类似于Lotto 6/39游戏,其中6个数字来自1:39。要做到这一点,请使用:

样本(1:39,6,替换=假)

如果你想模拟很多次播放,比如1000次播放,那就是当你使用replicate时:

replicate(1000, sample(1:39, 6, replace = FALSE)
相关问题