Dplyr: eşleşmeyen kayıtları bulmak için anti_join nasıl kullanılır?


Bir veri çerçevesindeki, başka bir veri çerçevesinde eşleşen değerlere sahip olmayan tüm satırları döndürmek için R’deki dplyr paketindeki anti_join() fonksiyonunu kullanabilirsiniz.

Bu işlev aşağıdaki temel sözdizimini kullanır:

 anti_join(df1, df2, by= ' col_name ')

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

Örnek 1: Bir sütunla anti_join() işlevini kullanma

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

 #create data frames
df1 <- data. frame (team=c('A', 'B', 'C', 'D', 'E'),
                  dots=c(12, 14, 19, 24, 36))

df2 <- data. frame (team=c('A', 'B', 'C', 'F', 'G'),
                  dots=c(12, 14, 19, 33, 17))

İkinci veri çerçevesinde eşleşen bir takım bulunmayan ilk veri çerçevesindeki tüm satırları döndürmek için anti_join() işlevini kullanabiliriz:

 library (dplyr)

#perform anti join using 'team' column
anti_join(df1, df2, by=' team ')

  team points
1 D 24
2 E 36

İlk veri çerçevesinden, ikinci veri çerçevesinde eşleşen bir takım adına sahip olmayan tam olarak iki takımın olduğunu görebiliriz.

Örnek 2: Birden fazla sütunla anti_join() işlevini kullanma

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

 #create data frames
df1 <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                  position=c('G', 'G', 'F', 'G', 'F', 'C'),
                  dots=c(12, 14, 19, 24, 36, 41))

df2 <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'B'),
                  position=c('G', 'G', 'C', 'G', 'F', 'F'),
                  dots=c(12, 14, 19, 33, 17, 22))

İlk veri çerçevesindeki eşleşen bir takıma ve ikinci veri çerçevesindeki konuma sahip olmayan tüm satırları döndürmek için anti_join() işlevini kullanabiliriz:

 library (dplyr)

#perform anti join using 'team' and 'position' columns
anti_join(df1, df2, by=c(' team ', ' position '))

  team position points
1 FY 19
2 BC 41

İlk veri çerçevesinden, ikinci veri çerçevesinde eşleşen bir takım adı ve konumu olmayan tam olarak iki kayıt olduğunu görebiliriz.

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 kullanarak dizine göre sütunlar nasıl seçilir
Dplyr kullanarak birden fazla veri çerçevesi nasıl birleştirilir
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