2017-03-10 2 views
1

Ich weiß, dass es viele Fragen/Antworten online gibt, die sich auf das Entfernen von Duplikaten in R beziehen, aber ich habe keinen gefunden, der meinem Problem ähnelt.eine duplizierte Beobachtung basierend auf zwei Spalten mit geschalteten Werten in R eliminieren?

Dies ist ein Beispiel dafür, was ich habe:

df<-data.frame("col1"=c("a","b","c","d","f","k"),"col2"=c("k","l","m","n","o","a"),stringsAsFactors=FALSE) 

Mein Ziel ist es, entweder die erste Zeile oder die letzte Zeile aus diesem Datenrahmen und haben folgendes Ergebnis zu beseitigen:

col1 col2 
1 a k 
2 b l 
3 c m 
4 d n 
5 f o 

danken Sie so sehr für Ihre Hilfe!

Antwort

1

Sie können apply verwenden, um die df zeilenweise zu sortieren und dann nach Duplikaten zu suchen. Danach behalten Sie nur die Zeilen, die eindeutig sind.

df[!duplicated(t(apply(df, 1, sort))),] 
# col1 col2 
#1 a k 
#2 b l 
#3 c m 
#4 d n 
#5 f o 
+1

vielen dank !!! – Fernando

Verwandte Themen