Dplyr kullanılarak göreceli frekanslar nasıl hesaplanır?


Genellikle R’deki bir veri çerçevesinin bir veya daha fazla sütunundaki değerlerin göreceli frekanslarını/oranlarını hesaplamak isteyebilirsiniz.

Neyse ki dplyr paketindeki işlevleri kullanarak bunu yapmak kolaydır. Bu eğitimde, aşağıdaki veri çerçevesinde göreceli frekansları hesaplamak için bu işlevlerin nasıl kullanılacağı gösterilmektedir:

 #create data frame
df <- data.frame(team = c('A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 position = c('G', 'F', 'F', 'G', 'G', 'G', 'F'),
                 points = c(12, 15, 19, 22, 32, 34, 39))

#view data frame
df

  team position points
1 AG 12
2 AF15
3 FY 19
4 BG 22
5 BG 32
6 BG 34
7 BF 39

Örnek 1: Bir değişkenin bağıl frekansı

Aşağıdaki kod, veri çerçevesindeki her takımın göreceli sıklığının nasıl hesaplanacağını gösterir:

 library(dplyr)

df %>%
  group_by (team) %>%
  summarize (n = n()) %>%
  mutate (freq = n / sum(n))

# A tibble: 2 x 3
  team n freq
    
1 to 3 0.429
2 B 4 0.571

Bu bize A Takımının veri çerçevesindeki tüm satırların %42,9’unu, B Takımının ise kalan %57,1’ini oluşturduğunu gösterir. Toplamlarının %100’e kadar çıktığını unutmayın.

İlgili: Tam Kılavuz: R’de Veriler Nasıl Gruplandırılır ve Özetlenir

Örnek 2: Birkaç değişkenin bağıl frekansı

Aşağıdaki kod, takım başına pozisyonların göreceli sıklığının nasıl hesaplanacağını gösterir:

 library(dplyr)

df %>%
  group_by (team, position) %>%
  summarize (n = n()) %>%
  mutate (freq = n / sum(n))

# A tibble: 4 x 4
# Groups: team [2]
  team position n freq
       
1 AF 2 0.667
2 AG 1 0.333
3 BF 1 0.250
4 BG 3 0.750

Bu bize şunu söylüyor:

  • A takımı oyuncularının %66,7’si F pozisyonundadır.
  • A takımı oyuncularının %33,3’ü G pozisyonundadır.
  • A takımı oyuncularının %25,0’ı F pozisyonundadır.
  • B takımı oyuncularının %75,0’ı G pozisyonundadır.

İlgili: R’de Yeni Değişkenler Oluşturmak İçin Mutate Nasıl Kullanılır

Örnek 3: Göreli frekansları yüzde olarak gösterin

Aşağıdaki kod, pozisyonların göreli sıklığının takıma göre nasıl hesaplanacağını ve bu göreli sıklıkların yüzde olarak nasıl görüntüleneceğini gösterir:

 library(dplyr)

df %>%
  group_by (team, position) %>%
  summarize (n = n()) %>%
  mutate (freq = paste0(round(100 * n/sum(n), 0), ' % '))

# A tibble: 4 x 4
# Groups: team [2]
  team position n freq 
       
1 AF 2 67%  
2 GA 1 33%  
3 BF 1 25%  
4 BG 3 75%

Daha fazla R eğitimini burada bulabilirsiniz.

Yorum ekle

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