R'de tanımlayıcı i̇statistikler nasıl hesaplanır (örnekle)


Tanımlayıcı istatistikler bir veri kümesini tanımlayan değerlerdir.

Veri setindeki değerlerin dağılımının yanı sıra veri setinin merkezinin nerede olduğunu anlamamıza da yardımcı olurlar.

R’de tanımlayıcı istatistikleri hesaplamak için kullanabileceğimiz iki fonksiyon vardır:

Yöntem 1: Summary() işlevini kullanın

 summary(my_data)

Summary() işlevi, R’deki bir veri çerçevesindeki her değişken için aşağıdaki değerleri hesaplar:

  • Asgari
  • 1. çeyrek
  • Medyan
  • Anlam
  • 3. çeyrek
  • Maksimum

Yöntem 2: sapply() işlevini kullanın

 sapply(my_data, sd, na. rm = TRUE )

sapply() işlevi, bir veri çerçevesindeki her değişken için Summary() işlevi tarafından hesaplananlar dışındaki tanımlayıcı istatistikleri hesaplamak için kullanılabilir.

Örneğin yukarıdaki sapply() işlevi, bir veri çerçevesindeki her değişkenin standart sapmasını hesaplar.

Aşağıdaki örnek, R’deki bir veri çerçevesindeki değişkenler için tanımlayıcı istatistikleri hesaplamak amacıyla bu iki işlevin nasıl kullanılacağını gösterir.

Örnek: R’de tanımlayıcı istatistiklerin hesaplanması

R’de üç değişken içeren aşağıdaki veri çerçevesine sahip olduğumuzu varsayalım:

 #create data frame
df <- data. frame (x=c(1, 4, 4, 5, 6, 7, 10, 12),
                 y=c(2, 2, 3, 3, 4, 5, 11, 11),
                 z=c(8, 9, 9, 9, 10, 13, 15, 17))

#view data frame
df

   X Y Z
1 1 2 8
2 4 2 9
3 4 3 9
4 5 3 9
5 6 4 10
6 7 5 13
7 10 11 15
8 12 11 17

Her değişken için çeşitli tanımlayıcı istatistikleri hesaplamak amacıyla Summary() işlevini kullanabiliriz:

 #calculate descriptive statistics for each variable
summary(df)

       xyz Min. : 1,000 Min. : 2,000 Min. : 8.00  
 1st Qu.: 4,000 1st Qu.: 2,750 1st Qu.: 9.00  
 Median: 5,500 Median: 3,500 Median: 9.50  
 Mean: 6.125 Mean: 5.125 Mean: 11.25  
 3rd Qu.: 7,750 3rd Qu.: 6,500 3rd Qu.: 13.50  
 Max. :12,000 Max. :11,000 Max. :17.00

Veri çerçevesindeki belirli değişkenler için yalnızca tanımlayıcı istatistikleri hesaplamak için parantezleri de kullanabiliriz:

 #calculate descriptive statistics for 'x' and 'z' only
summary(df[, c(' x ', ' z ')])

       xz Min. : 1,000 Min. : 8.00  
 1st Qu.: 4.000 1st Qu.: 9.00  
 Median: 5.500 Median: 9.50  
 Mean: 6.125 Mean: 11.25  
 3rd Qu.: 7.750 3rd Qu.: 13.50  
 Max. :12,000 Max. :17.00 

Her değişken için spesifik tanımlayıcı istatistikleri hesaplamak için sapply() fonksiyonunu da kullanabiliriz.

Örneğin, aşağıdaki kod her değişkenin standart sapmasının nasıl hesaplanacağını gösterir:

 #calculate standard deviation for each variable
sapply(df, sd, na. rm = TRUE )

       X Y Z
3.522884 3.758324 3.327376

Tanımlayıcı istatistikleri hesaplamak için sapply() içindeki bir function() işlevini de kullanabiliriz.

Örneğin, aşağıdaki kod her değişken için aralığın nasıl hesaplanacağını gösterir:

 #calculate range for each variable
sapply(df, function(df) max(df, na. rm = TRUE )-min(df, na. rm = TRUE ))

 X Y Z
11 9 9

Son olarak, tanımlayıcı istatistikleri hesaplayan karmaşık bir fonksiyon oluşturabilir ve daha sonra bu fonksiyonu sapply() fonksiyonuyla birlikte kullanabiliriz.

Örneğin aşağıdaki kod, veri çerçevesindeki her değişkenin modunun nasıl hesaplanacağını gösterir:

 #define function that calculates mode
find_mode <- function (x) {
  u <- unique(x)
  tab <- tabulate(match(x, u))
  u[tab == max(tab)]
}

#calculate mode for each variable
sapply(df, find_mode)

$x
[1] 4

$y
[1] 2 3 11

$z
[1] 9

Sonuçtan şunu görebiliriz:

  • x değişkeninin modu 4’tür .
  • Y değişkeninin modu 2 , 3 ve 11’dir (bu değerlerin her biri en sık görüldüğü için)
  • z değişkeninin modu 9’dur .

Summary() ve sapply() işlevlerini kullanarak, bir veri çerçevesindeki her değişken için istediğimiz tanımlayıcı istatistikleri hesaplayabiliriz.

Ek kaynaklar

Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

R’de özet tablolar nasıl oluşturulur
R’de çeyrekler arası aralık nasıl bulunur?
R’de aykırı değerler nasıl kaldırılır

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir