22
Chciałbym ustawić nasiona w R tylko lokalnie (wewnątrz funkcji), ale wydaje się, że R ustawia nasiona nie tylko lokalnie, ale także globalnie. Oto prosty przykład tego, co próbuję (nie) robić.ustawienie nasion lokalnie (nie globalnie) w R
myfunction <- function() {
set.seed(2)
}
# now, whenever I run the two commands below I'll get the same answer
myfunction()
runif(1)
Moje pytania brzmią: dlaczego R ustawi ziarno na całym świecie, a nie tylko wewnątrz mojej funkcji? I jak mogę sprawić, żeby R ustawiał ziarno tylko w mojej funkcji?
Dziękujemy! Spróbuję twojej odpowiedzi. Każdy pomysł, dlaczego R ma ten nieoczekiwany (przynajmniej dla mnie) efekt uboczny? –
tak: według projektu :-) –
+1 Pokonaj mnie. @ManoelGaldino Co do "dlaczego?" Nie sądzę, żeby było to w ogóle nieoczekiwane. Wdrożenie nowego, oddzielnego generatora losowego dla każdego środowiska funkcjonalnego byłoby strasznie skomplikowane, jak sądzę. I być może poniosą pewną poprawę wydajności. – joran