2016-11-03 19 views
-7

シード値を削除する方法はありますか?私はちょうど以下のようにサンプルコードを実行しましたシード値をリセットする方法

set.seed(912) 
sample(10) 

私は以下の結果を得ました。

[1] 5 8 2 10 9 3 4 7 1 6 

ここで、シード値を停止します。私はRセッションを保存せずに閉じ、再オープン後に上記と同じコードを実行し、同じシーケンスで結果を得ました。

シードに関連する質問の1つ下にコードがありますが、それも機能しませんでした。ここで

set.seed(Sys.time()) 
+0

'?set'は' .Random.seed'について何か言っています、それはあなたが探しているものですか? – Llopis

+0

'set.seed(seed = NULL);を試してください。もしシードがまだセットされていないかのように、シードがNULLで呼び出された場合、再初期化されます。 ") –

+0

@docendodiscimus同じコード' set.seed(seed = NULL) ) 'とし、' set.seed(912);サンプル(10) 'でも同じシーケンスが返ってきました。[1] 5 8 2 10 9 3 4 7 1 6' – mockash

答えて

3

は、ヘルプメニューから来ているスクリプトです - 私はこの記事でそれを見つけた:Questions about set.seed() in R

rm(.Random.seed, envir=globalenv()) 

ここでは例です:

> set.seed(912) 
> rm(.Random.seed, envir=globalenv()) 
> sample(10) 
[1] 1 8 2 10 3 4 6 7 9 5 
> set.seed(912) 
> rm(.Random.seed, envir=globalenv()) 
> sample(10) 
[1] 2 9 3 4 10 7 6 8 1 5 
> set.seed(912) 
> rm(.Random.seed, envir=globalenv()) 
> sample(10) 
[1] 3 10 7 8 5 2 1 4 9 6 

・ホープ、このことができます。

シードの設定に関係がない場合は、シードを設定せずにサンプル(10)を実行するだけで、さまざまなサンプルを返すことができます。

+0

同じシードを再度設定すると、同じ結果が得られます。rm(....)の後にset.seedを設定しないと、別のサンプルが得られます – Llopis

関連する問題