你如何让一个变量改变它在R中的值? (`sample`命令)

weixin_38088019 2019-09-12 03:22:39

这可能是一个非常基本的问题,但是如何让变量在R中的值变化如下? var <- sample(c(-2, -1, 0, 1, 2), size = 1)一直给予相同的数字。我能做些什么来防止这种情况发生?








...全文
52 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38089806 2019-09-12
  • 打赏
  • 举报
回复

如果你这样做,set.seed(NULL)并重新运行你的代码,你会收到一个不同的值每次。但是,如果您执行的操作类似set.seed(1729),set.seed(42)等,您将再次得到相同的号码。 在我的系统,运行set.seed(NULL)结果如下: > set.seed(NULL) > var <- sample(c(-2, -1, 0, 1, 2), size = 1) > var [1] -2 > var <- sample(c(-2, -1, 0, 1, 2), size = 1) > var [1] 1 如果我尝试set.seed(1729)并重新运行代码,我将得到: > set.seed(1729) > var <- sample(c(-2, -1, 0, 1, 2), size = 1) > var [1] 0 > var <- sample(c(-2, -1, 0, 1, 2), size = 1) > var [1] 0 这是我们选择的种子数是起始点用于产生一系列随机数,这就是为什么我们在给定相同种子数的情况下获得相同结果的原因。从文档 注?set.seed: 最初,没有种子;从当前的 时间创建一个新的时间,并在需要时创建进程ID。因此,默认情况下,不同会话 将给出不同的模拟结果。但是,如果先前保存的 工作空间已恢复,则种子 可能会从先前的会话中恢复。

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧