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?