Воспроизводимость R-markdown с помощью set.seed - PullRequest
0 голосов
/ 10 февраля 2020

Я написал скрипт R для случайного назначения участников и RCT. Я использовал set.seed(), чтобы гарантировать, что у меня будут воспроизводимые результаты.

Теперь я хочу задокументировать то, что я сделал, в документе уценки R, и, как ни странно, я не получаю те же результаты, несмотря на использование одного и того же начального числа.

Вот код блока:

knitr::opts_chunk$set(cache = T)

set.seed(4321)

Group <- sample(1:3, 5, replace=TRUE)

couple.df <- data.frame(couple.id=1:5, 
                        partner1=paste0("FRS0", c(35, 36, 41, 50, 61)),
                        partner2=paste0("FRS0", c(38, 37, 42, 51, 62)),
                        Group)

print(couple.df)

А вот вывод, который я получаю, когда запускаю его как блок:

couple.id
<int>
partner1
<chr>
partner2
<chr>
Group
<int>

1   FRS035  FRS038  2   
2   FRS036  FRS037  3   
3   FRS041  FRS042  2   
4   FRS050  FRS051  1   
5   FRS061  FRS062  3   

(не знаю, как получить это для форматирования)

Это то же самое, что и я, когда писал оригинальный код в виде сценария R.

Однако, когда я вяжу файл уценки, я получаю следующий вывод в моем * Документ 1021 * (еще раз извините за форматирование - я только что скопировал и вставил из документа html, добавив галочки для форматирования его в виде кода, также приветствуются указатели на то, как это сделать правильно)

knitr::opts_chunk$set(cache = T)

set.seed(4321)

Group <- sample(1:3, 5, replace=TRUE)

couple.df <- data.frame(couple.id=1:5, 
                        partner1=paste0("FRS0", c(35, 36, 41, 50, 61)),
                        partner2=paste0("FRS0", c(38, 37, 42, 51, 62)),
                        Group)

print(couple.df)
##   couple.id partner1 partner2 Group
## 1         1   FRS035   FRS038     1
## 2         2   FRS036   FRS037     2
## 3         3   FRS041   FRS042     3
## 4         4   FRS050   FRS051     2
## 5         5   FRS061   FRS062     1

То есть они разные. Что здесь происходит и как я могу получить документ уценки, чтобы получить те же результаты? Я намерен использовать распределение, к которому я пришел, используя оригинальный сценарий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...