knitr和简单执行模式下的set.seed()
在编织机和简单(逐行)执行模式中,R对knitr和简单执行模式下的set.seed(),r,random-seed,R,Random Seed,在编织机和简单(逐行)执行模式中,R对random.seed()+sample()命令的处理似乎不一致。例如,当我逐行运行下面的R代码时(通过点击Control Enter),我得到一组x的采样元素。然而,当我编织整个文档时,我会得到一组不同的采样元素,尽管种子被设置为相同的数目 我对stackoverflow和其他地方做了一些研究,我发现唯一与我的问题相关的是易慧网站下一页的最后一段。在执行Yi Hui的建议后,问题仍然存在(取消注释下面RMarkdown中的第二个knitr::opts_ch
random.seed()
+sample()
命令的处理似乎不一致。例如,当我逐行运行下面的R代码时(通过点击Control Enter),我得到一组x
的采样元素。然而,当我编织整个文档时,我会得到一组不同的采样元素,尽管种子被设置为相同的数目
我对stackoverflow和其他地方做了一些研究,我发现唯一与我的问题相关的是易慧网站下一页的最后一段。在执行Yi Hui的建议后,问题仍然存在(取消注释下面RMarkdown中的第二个knitr::opts_chunk
命令)
我的问题是,无论执行模式如何,如何获得相同的采样元素
---
title: "set.seed() in knitter mode"
author: "some author"
date: "1/27/2020"
output: html_document
---
```{r setup, include=FALSE}
library(knitr)
knitr::opts_chunk$set(echo = TRUE)
#knitr::opts_chunk$set(cache.extra = rand_seed) # Yi Hui's suggestion
```
## set.seed() in knitter mode.
```{r}
x=1:10
set.seed(234252)
sample(x,4)
# When running the above code manually, I get
# [1] 2 4 6 10
# When knitting the whole document, I get
# [1] 3 2 6 5
# How to get the same sampled elements of x regardless of the execution mode?
```
在我的控制台上,我得到了
3 2 6 5
。R版本3.6.1(2019-07-05)平台:x86_64-apple-darwin15.6.0(64位),运行于:macOS High Sierra 10.13.6谢谢Brian的评论。您的意思是,无论执行模式如何,您都会得到相同的x
采样元素吗?是的,对于编写的代码,我在控制台和编织时都会得到相同的结果knitr 1.26
。请使用sessionInfo()
的输出更新您的问题。在我的控制台上,我得到3 2 6 5
。R版本3.6.1(2019-07-05)平台:x86_64-apple-darwin15.6.0(64位),运行于:macOS High Sierra 10.13.6谢谢Brian的评论。您的意思是,无论执行模式如何,您都会得到相同的x
采样元素吗?是的,对于编写的代码,我在控制台和编织时都会得到相同的结果knitr 1.26
。请使用sessionInfo()
的输出更新您的问题。
R version 3.6.2 (2019-12-12).
Platform: x86_64-apple-darwin15.6.0 (64-bit),
Running under: macOS Catalina 10.15.2.
Locale: en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
Attached base packages: stats graphics grDevices utils datasets methods base
Other attached packages: knitr_1.26
Loaded via a namespace (and not attached): compiler_3.6.2 magrittr_1.5 tools_3.6.2 htmltools_0.4.0 yaml_2.2.0 Rcpp_1.0.3 stringi_1.4.3 rmarkdown_2.0 stringr_1.4.0 xfun_0.11 digest_0.6.23 rlang_0.4.2 evaluate_0.14