2017-11-09 6 views
2

Ich laufe derzeit R Version 3.1.0 (auf Ubuntu 12.04 LTS) und da sowohl meine R-Version als auch mein Betriebssystem ziemlich alt werden, plane ich beide zu aktualisieren. Allerdings habe ich viele Simulationen, die auf set.seed() beruhen, und ich möchte, dass sie mir immer noch die gleichen Zufallszahlen geben, nachdem ich sowohl R als auch mein Betriebssystem aktualisiert habe.Ist set.seed konsistent über verschiedene Versionen von R (und Ubuntu)?

Also meine Frage ist dreifach.

  1. Kann ich R aktualisieren, ohne zu ändern, welche Nummern von jedem Seed generiert werden?
  2. Kann ich das gleiche für mein Betriebssystem tun?
  3. Wenn nein zu 1) oder 2), gibt es eine Möglichkeit, die Samen in meinem Code so zu ändern, dass sie mit den alten Samen übereinstimmen?
+0

Die Zufallszahlengenerierung erfolgt mit einem Algorithmus. 'set.seed()' übergibt den Startwert an ihn. Daher sollte es nicht von OS und R-Version abhängen. Also, 1. Ja. 2. Ja. – Suren

Antwort

1

auf mehr R-Versionen getestet Nachdem (3.1.0, 3.3.1, 3.4.2) und zwei verschiedene Maschinen (Windows 7 x64, Windows-10 x 64), bekam ich die gleichen runif() Zufallszahl mit den gleichen set.seed() unabhängig von den R-Versionen und dem Betriebssystem. Soweit ich weiß, schlägt dies ein Ja für beide Fragen 1 und 2 vor.

+0

Vielen Dank für Ihre Antwort. Ich erkannte, dass dies ziemlich einfach getestet werden konnte. Also lief ich set.seed (75842) rnorm (3) auf zwei Computer, verschiedene Betriebssysteme und verschiedene Versionen von R. In beiden Fällen bekam ich [1] 1,5704983 -0,9103801 0,6197490 So scheint es dass es sicher ist, von diesem Standpunkt aus zu aktualisieren. – Phil

Verwandte Themen