如何解决如何在R中创建唯一的随机数?
我希望生成1:100之间的随机数,然后通过3检验它们的可除性。我创建了一个循环。
v <- c(0)
for(i in 1:100){
r <- floor(runif(1,min=1,max=100))
if(r %% 3 == 0){
v <- append(v,r)
}
}
print(v)
但是,正如下面的输出所示,数字确实不断重复。有什么办法只能在1:100之间生成3的唯一倍数。我知道有一种方法可以使用seq函数并生成相同的数字,但是我仍然想知道如何获取唯一的随机数。
输出:
[1] 0 18 87 30 45 90 12 72 75 60 27 84 90 27 42 54 63 15 63 30 72 69 57 30 3 6 15 30 3
[30] 60 72 6 6 18 75 96 84 78 24
解决方法
sample(1:33)*3
是您范围内3的所有倍数,以随机顺序排列。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。