R'de set.seed nasıl (ve ne zaman) kullanılır?
R’deki set.seed() işlevi, rastgele değerler alan değişkenler oluşturmayı içeren kod yazarken tekrarlanabilir sonuçlar oluşturmak için kullanılır.
set.seed() fonksiyonunu kullanarak, kodu her çalıştırdığınızda aynı rastgele değerlerin üretilmesini sağlarsınız.
Bu işlev aşağıdaki temel sözdizimini kullanır:
set.seed(tohum)
Altın:
- tohum : istediğiniz herhangi bir sayı.
Aşağıdaki örnekler bu fonksiyonun pratikte nasıl kullanılacağını göstermektedir.
Örnek 1: set.seed() kullanmadan rastgele değerler üretin
Standart normal dağılımı takip eden rastgele değerler alan üç değişkenli bir veri çerçevesi oluşturmak için rnorm() işlevini kullandığımızı varsayalım:
#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
Aynı veri çerçevesini rnorm() kullanarak tekrar oluşturmaya çalışırsak set.seed() fonksiyonunu kullanmadığımız için değerlerin aynı olacağının garantisi yoktur:
#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
Veri çerçevesindeki her sütunun değerlerinin tamamen farklı olduğunu unutmayın.
Örnek 2: set.seed() kullanarak rastgele değerler oluşturun
Aşağıdaki kod, rastgele değerler alan üç değişkenli bir veri çerçevesi oluşturmak için rnorm() işlevini kullanmadan önce set.seed() işlevinin nasıl kullanılacağını gösterir:
#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() işlevini öncekiyle aynı tohum değeriyle kullanırsak ve veri çerçevesini yeniden oluşturursak, önceki veri çerçevesiyle aynı değerlere sahip olması garanti edilir:
#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
Bu veri çerçevesindeki değerlerin önceki veri çerçevesindeki değerlerle eşleştiğini unutmayın.
Not : Bu örnekte başlangıç değeri olarak 7’yi kullanmayı seçtik ancak siz 0, 54, 99, 100, 48787 vb. gibi istediğiniz herhangi bir sayıyı seçebilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde R’deki diğer yaygın işlevlerin nasıl kullanılacağı açıklanmaktadır:
R’de dim() işlevi nasıl kullanılır?
R’de table() işlevi nasıl kullanılır?
R’de işaret () işlevi nasıl kullanılır?