Dplyr kullanarak verileri gruplama ve filtreleme


R’deki dplyr paketini kullanarak verileri gruplamak ve filtrelemek için aşağıdaki temel sözdizimini kullanabilirsiniz:

 df %>%
  group_by(team) %>%
  filter(any(points = = 10 ))

Bu özel sözdizimi, takım adı verilen sütun başına bir veri çerçevesini gruplandırır ve yalnızca puan sütunundaki en az bir değerin 10’a eşit olduğu grupları filtreler.

Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.

Örnek: dplyr kullanarak verileri gruplandırın ve filtreleyin

R’de çeşitli basketbol oyuncuları hakkında bilgi içeren aşağıdaki veri çerçevesine sahip olduğumuzu varsayalım:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'),
                 points=c(10, 15, 8, 4, 10, 10, 12, 12, 7))

#view data frame
df

  team points
1 to 10
2 to 15
3 to 8
4 B 4
5 B 10
6 B 10
7 C 12
8 C 12
9 C 7

Veri çerçevesini Ekip sütunundaki değere göre gruplandırmak için aşağıdaki kodu kullanabiliriz, ardından Puanlar sütununda 10’a eşit en az bir değere sahip olmayan tüm grupları filtreleyebiliriz:

 library (dplyr)

#group by team and filter out teams where no points value is equal to 10
df %>%
  group_by(team) %>%
  filter(any(points == 10 ))

# A tibble: 6 x 2
# Groups: team [2]
  team points
    
1 to 10
2 to 15
3 to 8
4 B 4
5 B 10
6 B 10

Puan sütununda “C” takımı için 10’a eşit bir değer bulunmadığından takımın “C”ye eşit olduğu tüm satırların filtrelendiğini unutmayın.

Bunun yalnızca uygulayabileceğimiz bir filtre örneği olduğunu unutmayın.

Örneğin, puan sütununda en az bir değeri 13’ten büyük olan takımları filtrelediğimiz başka bir filtre uygulayabiliriz:

 library (dplyr)

#group by team and filter out teams where no points value is greater than 13
df %>%
  group_by(team) %>%
  filter(any(points > 13 ))

# A tibble: 3 x 2
# Groups: team [1]
  team points
    
1 to 10
2 to 15
3 to 8

En az bir puan değeri 13’ten büyük olan tek takım olduğu için yalnızca takımın “A”ya eşit olduğu satırların tutulduğunu unutmayın.

Not : Filtre fonksiyonunun tam belgelerini dplyr’de burada bulabilirsiniz.

Ek kaynaklar

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

Dplyr kullanarak gruba göre ilk satır nasıl seçilir
Dplyr kullanarak birden çok koşula göre filtreleme nasıl yapılır
Belirli bir dizeyi içeren satırları dplyr kullanarak nasıl filtreleyebilirim?

Yorum ekle

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