Bir çok analiz yönteminin temelini olasılık dağılımları oluşturmaktadır. İşin esasında olasılıkları dağılımları tam anlaşılmadan analiz yöntemleri ile istenilen sonuçların elde edilmesi tek başına bazıları için yeterli olsa da işin felsefesini anlamak açısından kesinlikle yetersizdir. Bu nedenle bu çalışmada öncelikle kesikli (disrete) ve sürekli (continous) dağılımlar başlıklar halinde verildikten sonra kesikli dağılım türlerinden biri olan Kesikli Uniform (Tek düze) dağılımı uygulama örnekleriyle ele alınarak somutlaştırılacaktır. Uygulama örnekleri R programlama dili kullanılarak adım adım yapılacaktır.
Rastlantı ya da kesin olmayan olaylarla ilgilenen olasılık teorisi, rastlantı olaylarını belirli kurallara göre matematik disiplininde inceleyen bir bilim dalıdır. Burada, rastlantı olayından kasıt gerçekleşmesi şansa bağlı olan önceden bilinmeyen olaylardır.
İstatistikte ve makine öğrenmede, diğer bir deyişle veri biliminde sıklıkla kullanılan örneklem uzayına bağlı olarak olasılık fonksiyon türleri kesikli ve sürekli olmak üzere iki ana başlıkta ele alınmaktadır.
- Kesikli Olasılık Fonksiyonu: Olasılık fonksiyonlarından ilki olan kesikli olasılık fonksiyonu örneklem uzayından elde edilen sonlu veya sayılabilir sonsuz sayıda ayrık sonuçları içermektedir.
- Sürekli Olasılık Fonksiyonu: Olasılık fonksiyonlarından diğeri sürekli olasılık fonksiyonu ise örneklem uzayından elde edilen sayılamayacak sonsuz sayıda ve ayrık olmayan sonuçları içermektedir.
Kesikli olasılık fonksiyonu ile sürekli olasılık fonksiyonu arasındaki temel farkı şöyle ifade edilebilir: Kesikli olasılık fonksiyonunda kesikli örneklem uzayı noktaları baz alırken, sürekli olasılık fonksiyonunda sürekli örneklem uzayı aralıklarla ilgilenmektedir.
Bahsedilen kesikli ve sürekli olasılık fonksiyonlarına göre dağılımlar iki ana başlık altında verilmektedir.
A) Kesikli Dağılımlar (Discrete Distributions)
- Bernoulli Dağılımı
- Kesikli Uniform Dağılımı
- Binom Dağılımı
- Poisson Dağılımı
- Negatif Binom Dağılımı
- Geometrik Dağılım
- Hipergeometrik Dağılımı
B) Sürekli Dağılımlar (Continuous Distributions)
- Normal Dağılım
- Tekbiçimli Uniform Dağılım
- Cauchy Dağılımı
- t Dağılımı
- F Dağılımı
- Ki-kare Dağılımı
- Üstel Dağılım
- Weibull Dağılımı
- Lognormal Dağılımı
- Birnbaum-Saunders
- Gamma Dağılımı
- Çift Üstel Dağılımı
- Güç Normal Dağılımı
- Güç Lognormal Dağılımı
- Tukey-Lambda Dağılımı
- Uç Değer Tip I Dağılımı
- Beta Dağılımı
Kesikli Uniform Dağılımı
Kesikli uniform bir dağılımda, örneklem uzayı sayılabilmesinin yanı sıra örneklem uzayındaki her eleman eşit derecede seçilme olasılığına sahiptir. istatistik ve olasılık teorisinde bu dağılıma simetrik olasılık dağılımı da denilmektedir. Hilesiz bir zar atılması deneyi bu dağılıma verilebilecek en basit örnektir. Atılan zar deneyinde olası sonuçlar 1, 2, 3, 4, 5, 6 olup, örneklem uzayındaki her bir sonucun elde edilmesi olasılığı eşit, yani 1 / 6’dır.
Kesikli Uniform dağılımında kullanılan parametreler Tablo 1’de verilmiştir. Bu dağılımda örneklem uzayı Tablo 1’de de görüleceği üzere ardışık tam sayılardan oluşmaktadır. Alt sınır burada örneklem uzayındaki başlangıç (ilk) elemanını, üst sınır ise örneklem uzayındaki son elemanı elemanı göstermektedir. Artış ardışık düzendedir. Örneğin bir zar için düşünecek olursak alt sınır (a) 1’e eşit iken üst sınır (b) ise 6’ya eşittir. Bu durumda örneklem uzayımız x ∈ {1,2,3,4,5,6}’dir. Aralarındaki artışın ise ardışık düzende olduğunu görmekteyiz.
Tablo 1: Kesikli Uniform Dağılım Parametreleri

Kesikli Uniform Olasılık Kütle Fonksiyonu (PMF)
Tablo 1’deki parametreler kullanılarak oluşturulan Kesikli Uniform olasılık kitle fonksiyonu (PMF) aşağıdaki eşitlikte verilmiştir.

Yukarıdaki eşitlik yardımıyla örneklem uzayının 6 tam sayıdan oluşan ardışık bir zar deneyinde 4 sayısının gelme olasılığını hesaplayalım. Elde edilen olasılık 1/6 olup, örneklem uzayındaki diğer elemanlar için de aynıdır. Diğer bir ifadeyle örneklem uzayındaki her bir elemanın seçilme olasılığı birbirine eşittir.

Örnek Uygulamalar
Örnek uygulamalara geçilmeden önce R’da yüklenmesi gereken kütüphaneleri aşağıda verelim. Daha önce aşağıdaki kütüphaneler kurulmamışsa lütfen kurunuz. R studio’yu sıklıkla kullandığım için gerek arayüzünün kullanım kolaylığı gerekse verimli olması açısından R konsol yerine R Studio arayüzünün kullanılması önerilmektedir. Eğer R yüklü değilse yapılan bu işlemleri bulutta yer alan R programlama yazılımını da kullanarak yapabilir ve R Studio arayüzünden bu platform üzerinden yararlanabilirsiniz. Sıklıkla bulut üzerindeki R Studio’yu da şahsen kullanmaktayım. Aşağıda linkten buluta giriş sağlayabilirsiniz. Sıklıkla
RStudio Cloud: https://login.rstudio.cloud/
gereklikütüphaneler<-sapply(c("dplyr","tibble","tidyr","ggplot2","formattable","ggthemes","readr","readxl","xlsx","ggpubr","formattable", "ggstance"), require, character.only = TRUE)
gereklikütüphaneler
Örnek 1: Ortalama, Varyans, Basıklık ve Çarpıklık Değerlerinin Hesaplanması
İlk olarak Kesikli uniform dağılımında bir zar deneyine göre ortalama, varyans, basıklık ve çarpıklık değerlerine bakalım. Bir zarda alt sınır (a) 1, üst sınır (b) 6 ve örneklem uzayımız ise ardışık düzende olup {a, a+1,…, b}’dir. a ve b değerlerini yerine koyduğumuzda örneklem uzayımız {1, 1+1,…, 6}’dır. Aşağıda yazılan R kod bloğunda Kesikli uniform dağılımına ait ortalama, varyans, basıklık ve çarpıklık değerlerini hesaplayalım.
a <- 1 # Alt sınır
b <- 6 # Üst sınır
n <- b - a + 1 # Noktaların sayısı
x <- a:b # Örneklem uzayı (a'nın değerinden b'nin değerine kadar olan tamsayılar.Yani örneklem uzayı= {1,2,4,5,6})
ortalama=(a+b)/2
varyans=(n^2-1)/12
carpiklik=0
basiklik= -6*(n^2+1)/ 5*(n^2-1)
formattable(cbind(ortalama, varyans,carpiklik, basiklik) %>% as_tibble() %>% mutate_if(is.numeric, round,3))
Yukarıdaki R kod bloğunun çalıştırılmasından sonra Bernoulli dağılımına ait elde edilen ortalama, varyans, çarpıklık ve basıklık değerleri aşağıdaki tabloda verilmiştir.

Örnek 2: Kütle Olasılık Fonksiyonu (PMF)’nun Hesaplanması
Bu kısımda varsayımsal ve orjinal bir örnekle Kesikli Uniform dağılımının kütle olasılık fonksiyonunu hesaplayalım. Plaka kodlarına göre ardışık düzende sıralanmış 81’ilden 61 plaka kodlu ilin seçilme olasılığını hesaplayarak, kütle olasılık fonksiyon grafiğini çizelim.
Bilinenler:
Alt sınır (a)=1
Üst sınır (b)=81
Noktaların sayısı (örneklem uzayındaki eleman sayısı) (b) = b – a + 1 = 81
Örneklem uzayı (x) ={a,2,3,….., 81}
Şimdi verilenleri aşağıda yazdığım R kod bloğunda yerine koyalım.
a <- 1 # Alt sınır
b <- 81 # Üst sınır
n <- b - a + 1 # Noktaların sayısı: örneklem uzayındaki eleman sayısı
x <- a:b # Örneklem uzayı (a'nın değerinden b'nin değerine kadar olan tamsayılar.Yani örneklem uzayı= {1,2,4,5,...,81})
kof <- rep(1/n,n) # Kütle olasılık fonksiyonu (PMF)
kof
sonuc<-kof %>% as_tibble() %>% mutate_if(is.numeric, round,8) %>% mutate(Orneklem_Uzayı=1:81, Olasilik=as.numeric(value))
grafik<-sonuc[,-1] %>% ggplot(aes(x=Orneklem_Uzayı,y=Olasilik)) + geom_line(color="red", size=1.5) +
guides(fill=FALSE) +
scale_x_continuous(breaks=seq(1, 81, 4))+
ggtitle(paste("Kesikli Uniform Olasılık Kütle Fonksiyonu (PMF)","(a=",round(a,2),",","b=",b,")")) +
ylab("Olasılık")+
xlab("Örneklem Uzayı")+
theme_igray()+
theme(plot.title = element_text(hjust = 0.5))
grafik
Yukarıdaki R kod bloğu çalıştırıldıktan sonra elde edilen Kesikli Uniform olasılık değerleri her plaka kodu bazında aşağıda verilmiştir. Görüleceği üzere 81 ilinde seçilme olasılığı eşittir.
[1] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[7] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[13] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[19] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[25] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[31] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[37] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[43] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[49] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[55] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[61] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[67] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[73] 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568 0.01234568
[79] 0.01234568 0.01234568 0.01234568
Şimdi de yukarıdaki R kod bloğundaki ilgi alan çalıştırılarak Kesikli Uniform olasılık değerlerini aşağıdaki grafiğe yansıtalım.

Kesikli Uniform Kümülatif Dağılım Fonksiyonu (CDF)
Kesikli Uniform olasılık dağılımda kümülatif dağılım fonksiyonu aşağıdaki eşitlik yardımıyla hesaplanmaktadır.

Örnek 3: Kümülatif Dağılım Fonksiyonu (CDF)’nunun Hesaplanması
Aşağıda yazılan R kod bloğunda ise yukarıdaki il örneğinden hareketle kümülatif dağılım fonksiyonu hesaplanmıştır.
a <- 1 # Alt sınır
b <- 81 # Üst sınır
n <- b - a + 1 # Noktaların sayısı: örneklem uzayındaki eleman sayısı
x <- a:b # Örneklem uzayı (a'nın değerinden b'nin değerine kadar olan tamsayılar.Yani örneklem uzayı= {1,2,4,5,...,81})
kdf <- (x-a+1)/n # Kümülatif dağılım fonksiyonu (CDF)
kdf
sonuc<-kdf %>% as_tibble() %>% mutate_if(is.numeric, round,8) %>% mutate(Orneklem_Uzayı=1:81, Olasilik=as.numeric(value))
grafik<-sonuc[,-1] %>% ggplot(aes(x=Orneklem_Uzayı,y=Olasilik)) + geom_line(color="red", size=1.5) +
guides(fill=FALSE) +
scale_x_continuous(breaks=seq(1, 81, 4))+
ggtitle(paste("Kesikli Uniform Kümülatif Dağılım Fonksiyonu (CDF)","(a=",round(a,2),",","b=",b,")")) +
ylab("Olasılık")+
xlab("Örneklem Uzayı")+
theme_igray()+
theme(plot.title = element_text(hjust = 0.5))
grafik
Yukarıdaki R kod bloğunun çalıştırılmasından sonra elde edilen kümülatif olasılık değerleri aşağıda verilmiştir. Kümülatif olasılık değerlerini hesapladığımız için aşağıda da görüleceği üzere her halükarda son olasılık değeri 1’e eşittir ve böyle olduğu da aşağıda görülmektedir.
[1] 0.01234568 0.02469136 0.03703704 0.04938272 0.06172840 0.07407407
[7] 0.08641975 0.09876543 0.11111111 0.12345679 0.13580247 0.14814815
[13] 0.16049383 0.17283951 0.18518519 0.19753086 0.20987654 0.22222222
[19] 0.23456790 0.24691358 0.25925926 0.27160494 0.28395062 0.29629630
[25] 0.30864198 0.32098765 0.33333333 0.34567901 0.35802469 0.37037037
[31] 0.38271605 0.39506173 0.40740741 0.41975309 0.43209877 0.44444444
[37] 0.45679012 0.46913580 0.48148148 0.49382716 0.50617284 0.51851852
[43] 0.53086420 0.54320988 0.55555556 0.56790123 0.58024691 0.59259259
[49] 0.60493827 0.61728395 0.62962963 0.64197531 0.65432099 0.66666667
[55] 0.67901235 0.69135802 0.70370370 0.71604938 0.72839506 0.74074074
[61] 0.75308642 0.76543210 0.77777778 0.79012346 0.80246914 0.81481481
[67] 0.82716049 0.83950617 0.85185185 0.86419753 0.87654321 0.88888889
[73] 0.90123457 0.91358025 0.92592593 0.93827160 0.95061728 0.96296296
[79] 0.97530864 0.98765432 1.00000000
Şimdi de hesaplanan bu kümülatif olasılık değerlerine göre kümülatif olasılık fonksiyonu (CDF:Cumulative Distribution Function)’nun grafiğini çizelim.

Kesikli Uniforma Dağılımına Göre Örneklem Seçimi
Kesikli Uniform dağılımına uygun olarak yukarıdaki il örneğinden hareketle tekrarlı basit tesadüfi örneklem yöntemini kullanarak ve hesaplanan olasılık değerleri dikkate alınarak örneklem büyüklüğünün 1000 olduğu örneklem üretelim. Ardından üretilen bu örneklemin hem yoğunluk grafiğini hem de histogramı çizelim.
a <- 1 # Alt sınır
b <- 81 # Üst sınır
x <- a:b # Örneklem uzayı (a'nın değerinden b'nin değerine kadar olan tamsayılar.Yani örneklem uzayı (x)= {1,2,4,5,...,81})
orneklembuyuklugu<-1000
#yoğunluk grafiğini verecek olursak
set.seed(61)
ggdensity(sample(x, orneklembuyuklugu, replace=TRUE), xlab="Örneklem Uzayı",ylab="Yoğunluk",col="red")+
ggtitle(paste("Kesikli Uniform Örneklem Yoğunluk Grafiği","(x=",round(b,2),",","n=",orneklembuyuklugu,")"))+
theme(plot.title = element_text(hjust = 0.5))+
theme_igray()
#histogramı verecek olursak
set.seed(61)#değerleri sabitlemek için
kud<-tibble(Sayi=sample(x, orneklembuyuklugu, replace=TRUE))
ggplot(kud, aes(x=Sayi)) +
geom_histogram(bins=50,binwidth=.4,fill = "blue", alpha = 0.7)+
xlab("Örneklem Uzayı")+
ylab("Sıklık")+
ggtitle(paste("Kesikli Uniform Örneklem Histogramı","(x=",round(b,2),",","n=",orneklembuyuklugu,")"))+
theme(plot.title = element_text(hjust = 0.5))+
theme_pander()
Kesikli uniform dağılımına uygun olarak çekilen örneklemin yoğunluk grafiğini verecek olursak R kod bloğundaki ilgili alan çalıştırıldığında aşağıdaki grafik elde edilmiş olacaktır.

Kesikli uniform dağılımına uygun olarak çekilen örneklemin histogramını ise R kod bloğundaki ilgili alan çalıştırıldığında aşağıdaki gibi grafik elde edilmiş olacaktır.

Yapılan bu çalışma ile özellikle veri bilimi (data science) ile ilgilenen akademi ve saha çalışanlarına bir katkı sunulması amaçlanmıştır.
Faydalı olması ve farkındalık oluşturması dileğiyle.
Bilimle ve teknolojiyle kalınız.
Saygılarımla.
Not: Kaynak gösterilmeden alıntı yapılamaz veya kopyalanamaz.
Note: It can not be cited or copied without referencing.
Yararlanılan Kaynaklar
- https://my.ilstu.edu/~wjschne/442/SimulatingRandomData.html#discrete-uniform-distribution
- https://en.wikipedia.org/wiki/Discrete_uniform_distribution
- http://www.hcs.harvard.edu/cs50-probability/binomial.php
- http://people.stern.nyu.edu/adamodar/New_Home_Page/StatFile/statdistns.htm
- https://statisticsglobe.com/bernoulli-distribution-in-r-dbern-pbern-qbern-rbern
- https://stat.ethz.ch/R-manual/R-devel/library/stats/html/Distributions.html
- https://my.ilstu.edu/~wjschne/442/SimulatingRandomData.html#bernoulli-distribution
- https://www.itl.nist.gov/div898/handbook/eda/section3/eda366.htm
- RStudio Cloud: https://login.rstudio.cloud/
- Matematiksel İstatistik, İsmail Erdem, Gözden Geçirilmiş ve Genişletilmiş 3. Baskı.
- The R Project for Statistical Computing. https://www.r-project.org/