R ve Python’da Tekrarsız Basit Tesadüfi Örnekleme Üzerine Bir Vaka Çalışması: A Case Study on Simple Random Sampling (SRS) without Replacement in R and Python

Basit tesadüfi örnekleme, popülasyondaki birimlerinden örnekleme seçilme olasılığı bilinen ve seçilme olasılığı sıfır olmayan örnekleme türüdür. Bu örnekleme türü aynı zamanda olasılıklı örnekleme tekniklerinden biri olup, popülasyon hakkında çıkarımsal (inferential) istatistikler ortaya koymaya ve örneklemden elde edilen bulguların hedef popülasyona genellebilmesine olanak tanır.

Basit tesadüfi örnekleme, tekrarsız (popülasyondaki birimlerin eşit ve bir kez seçilme olasılığı) ve varsayımsal bir olay üzerinden uygulamalı olarak gösterilecektir. Bu kapsamda R ve Python programlama dilleri kullanılacaktır. R ve Python programlama dilleri ücretsiz olarak indirileceği gibi aşağıda web adresleri verilen bulut (cloud) üzerinden de rahatlıkla ulaşılabilir ve aşağıdaki kod blokları ihtiyacınıza uygun uyarlanarak kolaylıkla uygulanabilir.

Örnek Olay (Example)

Popülasyon büyüklüğü (N) 850 firma arasından 120 firma (n: örneklem büyüklüğü) tekrarsız basit tesadüfi örnekleme yapılarak örnekleme seçilecektir. Daha sonra örneklem seçilen bu firmalar üzerinde araştırma yapılması planlanmaktadır.

Not 1: Örneklem seçimine geçmeden önce elde edilen firma listesinin mükerrer kayıtlardan arındırılması (firmaların benzersiz olması) ve her bir firmaya küçükten büyüğe doğru numara ataması yapılması gerekmektedir.

Not 2: Eğer tabakalı örnekleme yapılacaksa her bir tabaka için örneklem büyüklüğü belirlenmesi gerekir ve her bir tabaka için ayrı ayrı tekrarsız basit tesadüfi örnekleme yapılır. Eğer örneklemde tabaka yoksa 120 firma tekrarsız olarak seçilmesi yeterli olacaktır.

Örnek olayın çözümüne ilişkin ilk uygulama, R programlama dili kullanılarak yapılacaktır.

Çözüm 1: R Kod Bloğu (Solution 1)

#Aşağıda tamsayı bileşenli "sample" fonksiyonu kullanılmıştır. Bunun nedeni Firma sayısının tamsayı olmasıdır. Buna göre firma sayısı 850 olup, 1'den 850'ye kadar numaralandırılmıştır. Fonksiyon içindeki 120, örneklem büyüklüğü (sample size)'dür. Fonksiyon içerisindeki replace ise örneklemin tekrarsız olacağı, diğer bir deyişle popülasyondaki her firmaya eşit seçilme şansı verileceği anlamına gelir. İlaveden sort fonksiyonu ilave edilerek seçilen firmaların küçükten büyüğe doğru sıralanması sağlanmıştır. İlk satırdaki set.seed (Sonuçları Sabitleme) fonksiyonu ise her defasında örnekleme seçilen firmaların aynı kalacağı anlamına gelir. Bu fonksiyon duruma göre kullanılabilir de kullanılmayabilir de. Tamamen karar vericiye bağlıdır.

set.seed(123)
orneklem<- sort(sample.int(850, 120, replace=FALSE))
orneklem

Çözüm 1‘e ait R kod bloğunun run edilmesiyle elde edilen sonuç (output) aşağıda yer almaktadır.

  [1]   1  21  36  37  39  45  71  75  79  86  87  98 100 102 105 109 112 116 121 123
 [21] 134 142 165 171 176 188 206 214 216 223 238 243 245 250 259 261 272 273 294 296
 [41] 297 298 303 305 321 333 335 336 344 347 352 353 354 361 366 369 375 381 385 390
 [61] 404 429 446 447 449 450 453 465 474 480 489 491 496 498 514 526 531 542 553 565
 [81] 568 575 585 589 590 598 605 618 622 636 637 638 641 650 664 670 676 681 682 688
[101] 693 699 700 709 713 739 748 752 753 790 794 796 804 811 823 828 830 840 841 843

Örnek olayın Pyhton programlama dili kullanılarak çözümü aşağıdaki gibi olacaktır.

Çözüm 2: Python Kod Bloğu (Solution 2)

#Örneklemden tesadüfi ve tekrarsız olanı çağrılır.
from random import sample
#Aşağıdaki random.seed fonksiyonu ise her defasında örnekleme seçilen firmaların aynı kalacağı anlamına gelir. Bu fonksiyon duruma göre kullanılabilir de kullanılmayabilir de. Tamamen karar vericiye bağlıdır.
import random
random.seed(123)
from random import sample 
#Popülasyon aralığı belirlenir (1'den 850'ye kadar olan firmalar). 
Populasyon = range(1,851)
#Popülasyondan örnekleme seçilen firmalar belirlenir.
print("Tekrarsız Basit Tesadüfi Örnekleme (SRS Without Replacement)", sample(Populasyon,120))

Çözüm 2‘ye ait Python kod bloğunun run edilmesiyle elde edilen sonuç (output) aşağıda yer almaktadır.

Tekrarsız Basit Tesadüfi Örnekleme (SRS Without Replacement) [54, 275, 90, 788, 418, 273, 111, 40, 389, 550, 576, 341, 349, 850, 164, 139, 346, 575, 342, 719, 252, 168, 2, 447, 793, 848, 612, 387, 72, 7, 324, 750, 460, 105, 45, 95, 684, 146, 130, 810, 22, 299, 441, 588, 489, 272, 481, 38, 847, 313, 352, 535, 495, 212, 624, 655, 540, 579, 323, 13, 408, 802, 662, 526, 445, 702, 552, 654, 683, 611, 498, 534, 685, 430, 384, 523, 33, 773, 661, 186, 744, 85, 499, 674, 269, 175, 343, 834, 568, 401, 76, 741, 468, 397, 587, 345, 17, 194, 601, 91, 644, 373, 14, 361, 235, 416, 545, 514, 742, 62, 795, 295, 507, 646, 239, 558, 496, 182, 158, 841]

Sonuç olarak, yukarıda çözüm 1 veya çözüm 2’ye göre ortaya konulan çıktıdan (output) numaralara karşılık gelen firmalarla araştırmaya başlanır.

Faydalı olması dileğiyle.

Saygılarımla.

Yararlanılan Kaynaklar

https://www.r-project.org/

https://www.python.org/

https://colab.research.google.com (Python)

https://rstudio.cloud/

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s