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