Согласованность между ОС: да
Если вы установили R в двух разных операционных системах, не меняя вручную значения по умолчанию или RProfile
, вы должны получить те же результаты при использовании set.seed()
.
Согласованность по версиям R: не обязательно
Раньше было так, что set.seed()
давал одинаковые результаты в версиях R, но это больше не так, благодаря немного анонсированному обновлению в R 3.6.0. Таким образом, вы можете получить согласованность между версиями, сравнивая результаты до R 3.6.0, но если вы сравните использование set.seed()
после 3.6.0 с использованием set.seed()
до 3.6.0, вы получите разные результаты.
Вы можете увидеть это в примерах ниже:
R 3.2.0
> set.seed(1999)
> sample(LETTERS, 3)
[1] "T" "N" "L"
R 3.5.3
> set.seed(1999)
> sample(LETTERS, 3)
[1] "T" "N" "L"
R 3.6.0
set.seed(1999)
sample(LETTERS, 3)
[1] "D" "Z" "R"
Причина несоответствия в том, что в R 3.6.0 изменен скрытый по умолчанию генератор случайных чисел. Теперь, чтобы результаты set.seed()
совпадали, вы должны сначала вызвать функцию RNGkind(sample.kind = "Rounding")
.
R 3.6.0
> RNGkind(sample.kind = "Rounding")
Warning message:
In RNGkind(sample.kind = "Rounding") : non-uniform 'Rounding' sampler used
> set.seed(1999)
> sample(Letters, 3)
[1] "T" "N" "L"
person
bschneidr
schedule
30.05.2019
set.seed()
передает ему семя. Следовательно, это не должно зависеть от версии ОС и R. Итак, 1. Да. 2. Да. - person Suren   schedule 09.11.2017