Rコンソールを開くたびに、ランダムシードは同じ値に設定されます。私のコンピュータ(あなたのマシン上で同じかもしれない)で、rnorm(1)
を実行すると、私はいつも最初の呼び出しで0.1777571
を得ます。現在の時間にランダムシードを自動的に設定する方法は?
私は、自動的にファイル.Rprofile
に
set.seed(
as.integer(
as.numeric(
gsub("[^0-9]","",paste(format(Sys.time(), "%Y %X %x")))
)%%.Machine$integer.max
)
)
のようなものを追加することによって、コンピュータの現在の時間を使ってランダムシードを設定しようとしましたが、それは何も変わりません。 rnorm(1)
への最初の呼び出しは常に0.1777571
を返します。
どのようにランダムシードをコンピュータの現在の時刻に自動的に設定できますか?
EDIT
私は、端末上で直接Rセッションを開きます。私はちょうどr
をヒットし、明示的に以前のワークスペースをロードしません。 set.seed
ため
mmhhh ...まあ、私は明示的に任意のワークスペースをロードしません。私はちょうどターミナルウィンドウで新しいセッションを開くためにbashの 'r'を押しました。 –
@ Remi.b以前に保存したワークスペースを明示的にロードする必要はなく、起動プロセスの一部としてロードされます。編集時に追加したリンクを参照してください。読み込んでいるワークスペースに可視オブジェクトがない場合、気付かないこともあります。隠された '.Random.seed'を復元していることを除いて –
ありがとうございました。 Rを開いたときに ''以前に保存されたワークスペースが復元されました ''というメッセージが表示されていることがわかりました。ファイル '/ Users/remi/.RData'を削除し、問題は解決しました。 –