R で set.seed を使用する方法 (いつ)


R のset.seed()関数は、ランダムな値を取る変数の作成を伴うコードを作成するときに、反復可能な結果を作成するために使用されます。

set.seed()関数を使用すると、コードを実行するたびに同じランダム値が生成されます。

この関数は次の基本構文を使用します。

set.seed(シード)

金:

  • シード: 任意の数。

次の例は、この関数を実際に使用する方法を示しています。

例1: set.seed()を使用せずにランダムな値を生成する

rnorm()関数を使用して、標準正規分布に従うランダムな値を取る 3 つの変数を含むデータ フレームを作成するとします。

 #create data frame
df <- data. frame (var1 = rnorm(10),
                 var2 = rnorm(10),
                 var3 = rnorm(10))

#view data frame
df

          var1 var2 var3
1 0.13076685 -0.32183484 0.08083558
2 0.93926332 0.92271464 1.14695121
3 1.97227368 0.01140237 0.29325751
4 1.99656555 0.26735086 1.17131155
5 -1.07893403 -0.12748185 -0.75510058
6 -0.58955485 -0.29720114 0.57928670
7 1.39367811 -1.43043111 -0.39395086
8 -0.09977302 -1.93133994 -0.66654713
9 -0.71876371 2.27999183 0.45990405
10 0.90421007 2.28077581 0.57545709

rnorm()を使用して同じデータ フレームを再度作成しようとすると、 set.seed()関数を使用していないため、値が同じになるという保証はありません。

 #create data frame
df <- data. frame (var1 = rnorm(10),
                 var2 = rnorm(10),
                 var3 = rnorm(10))

#view data frame
df

         var1 var2 var3
1 0.1841698 1.18134622 -0.9410759
2 -1.3535924 -0.73136515 -0.2802438
3 1.0323083 0.06530416 -1.3447057
4 -0.6540649 -0.45005680 1.1222456
5 0.5201189 -0.03688566 -0.6317776
6 0.6119033 -0.13083390 0.7034120
7 -0.1781823 0.56807218 0.2138826
8 -0.1325103 1.10700318 -0.6799447
9 -0.6185180 0.12327017 -0.2411492
10 -0.2699959 -0.04093012 0.5289240

データフレームの各列の値は完全に異なることに注意してください。

例 2: set.seed() を使用してランダムな値を生成する

次のコードは、rnorm () 関数を使用する前に set.seed ()関数を使用して、ランダムな値を取る 3 つの変数を含むデータ フレームを作成する方法を示しています。

 #make this example reproducible
set. seeds (7)

#create data frame
df <- data. frame (var1 = rnorm(10),
                 var2 = rnorm(10),
                 var3 = rnorm(10))

#view data frame
df

         var1 var2 var3
1 2.2872472 0.356986230 0.8397504
2 -1.1967717 2.716751783 0.7053418
3 -0.6942925 2.281451926 1.3059647
4 -0.4122930 0.324020540 -1.3879962
5 -0.9706733 1.896067067 1.2729169
6 -0.9472799 0.467680511 0.1841928
7 0.7481393 -0.893800723 0.7522799
8 -0.1169552 -0.307328300 0.5917451
9 0.1526576 -0.004822422 -0.9830526
10 2.1899781 0.988164149 -0.2760640

以前と同じシード値でset.seed()を使用してデータ フレームを再度作成すると、前のデータ フレームと同じ値を持つことが保証されます。

 #make this example reproducible
set. seeds (7)

#create data frame
df2 <- data. frame (var1 = rnorm(10),
                  var2 = rnorm(10),
                  var3 = rnorm(10))

#view data frame
df2

         var1 var2 var3
1 2.2872472 0.356986230 0.8397504
2 -1.1967717 2.716751783 0.7053418
3 -0.6942925 2.281451926 1.3059647
4 -0.4122930 0.324020540 -1.3879962
5 -0.9706733 1.896067067 1.2729169
6 -0.9472799 0.467680511 0.1841928
7 0.7481393 -0.893800723 0.7522799
8 -0.1169552 -0.307328300 0.5917451
9 0.1526576 -0.004822422 -0.9830526
10 2.1899781 0.988164149 -0.2760640

このデータ フレームの値は前のデータ フレームの値と一致することに注意してください。

: この例では、開始値として7を使用することを選択しますが、0、54、99、100、48787 などの任意の数値を選択できます。

追加リソース

次のチュートリアルでは、R の他の一般的な関数の使用方法について説明します。

R で dim() 関数を使用する方法
Rでtable()関数を使用する方法
Rでsign()関数を使用する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です