Dplyr kullanarak çapraz tablo nasıl oluşturulur (örneklerle)


R’deki dplyr ve Tidyr paketlerindeki işlevleri kullanarak bir çapraz tablo oluşturmak için aşağıdaki temel sözdizimini kullanabilirsiniz:

 df %>%
  group_by (var1, v ar2) %>%
  tally () %>%
  spread (var1,n)

Aşağıdaki örnekler bu sözdiziminin pratikte nasıl kullanılacağını göstermektedir.

Örnek 1: Temel Çapraz Tablo Oluşturma

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

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
                 position=c('G', 'G', 'F', 'C', 'G', 'F', 'F', 'C'),
                 dots=c(7, 7, 8, 11, 13, 15, 19, 13))

#view data frame
df

  team position points
1 AG 7
2 AG 7
3AF 8
4 AC 11
5 BG 13
6 BF 15
7 BF 19
8 BC 13

“Takım” ve “konum” değişkenleri için bir çapraz tablo oluşturmak amacıyla aşağıdaki sözdizimini kullanabiliriz:

 library (dplyr)
library (tidyr)

#produce crosstab
df %>%
group_by (team, position) %>%
tally () %>%
spread (team, n)

# A tibble: 3 x 3
  position AB
1 C 1 1
2 F 1 2
3 G 2 1

Çapraz tablo değerlerini nasıl yorumlayacağınız aşağıda açıklanmıştır:

  • “C” pozisyonunda bulunan ve “A” takımına ait 1 oyuncu var
  • “C” pozisyonunda bulunan ve “B” takımına ait 1 oyuncu var
  • “F” pozisyonunda bulunan ve “A” takımına ait 1 oyuncu var
  • “F” pozisyonunda olan ve “B” takımına ait 2 oyuncu var
  • “G” pozisyonunda olan ve “A” takımına ait 2 oyuncu var
  • “G” pozisyonunda bulunan ve “B” takımına ait 1 oyuncu var

spread() işlevinde kullanılan değişkeni değiştirerek çapraz tablonun satırlarını ve sütunlarını değiştirebileceğimizi unutmayın:

 library (dplyr)
library (tidyr)

#produce crosstab with 'position' along columns
df %>%
group_by (team, position) %>%
tally () %>%
spread (position, n)

# A tibble: 2 x 4
# Groups: team [2]
  team CFG
1 A 1 1 2
2 B 1 2 1

İlgili: Tidyr’de Yayılma özelliği nasıl kullanılır?

Ek kaynaklar

Aşağıdaki eğitimlerde dplyr’de diğer yaygın işlevlerin nasıl gerçekleştirileceği açıklanmaktadır:

Dplyr kullanılarak göreceli frekanslar nasıl hesaplanır?
Dplyr kullanarak dizine göre sütunlar nasıl seçilir
Dplyr kullanarak satırlar nasıl silinir

Yorum ekle

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