Lassen Sie uns sagen, dass ich ein data.frame
haben, die wie folgt aussieht:einen Datenrahmen Deduplizierung, wenn die Reihenfolge der Werte in R unterscheiden können
df = data.frame(from=c(1, 1, 2, 1),
to=c(2, 3, 1, 4),
title=c("A", "B", "A", "A"),
stringsAsFactors=F)
df
ein Objekt, das für ein Netzwerk Graph alle verschiedenen Verbindungen hält. Ich habe auch eine zweite data.frame
, die die vereinfachte grafische Darstellung Daten:
df2 = data.frame(from=c(1, 1, 3),
to=c(2, 4, 1),
stringsAsFactors=F)
Was ich brauche, ist die title
Werte von df
in df2
zu ziehen. Ich kann nicht einfach df
deduplizieren, weil a) from
und to
in verschiedenen Ordnungen sein können, und b) title
ist nicht einzigartig zwischen Verbindungen. Der aktuelle Zustand ich habe, ist:
df2$title = df$title[df2$from == df$from & df2$to == df$to]
Dies führt jedoch in zu wenigen Zeilen aufgrund der Größenordnung von from
und to
in Reihe 2 von df2
umgekehrt wird. Wenn ich eine OR
condtion einführe, bekomme ich zu viele Ergebnisse, weil die Verbindung zwischen 1 und 2 zweimal übereinstimmt.
Meine Frage ist dann, wie kann ich effektiv die title
Variable "deduplizieren", um sie an df2
anzufügen?
Das erwartete Ergebnis ist folgendes:
from to title
1 1 2 A
2 1 4 A
3 3 1 B
Was ist Ihre erwartete Ausgabe? – pbahr
gerade hinzugefügt. Das tut mir leid. – brittenb
Wenn es ungerichtet ist, sollten Sie einen Standard für sich selbst festlegen, von. 'muate (from2 = pmin (von, bis), bis = pmax (von, bis), von = von2)%>% select (-from2)'. –
Gregor