Ich habe zwei Datensätze, die ich über zwei identifizieren Variablen fusionieren möchte (und ver_u):Warum gibt es Unterschiede bei der Verwendung von Zusammenführung und% in%?
df1 looks like this:
up ver_u
257001 1
1010 1
101010 1
100316 1
df2 looks like this:
up ver_u code_uc quantity
500116 1 395884 1
100116 1 36761 2
160116 1 81308 3
100116 1 76146 1
113216 1 6338 1
101116 1 33887 1
Was würde ich gerne tun, um eine Teilmenge von DF2 zu nehmen, wo ihre und ver_u Streichhölzern mit denen in df1. Ich habe das auf zwei verschiedene Arten gemacht und verschiedene Antworten bekommen.
Erste Methode:
pur <- merge(df2, df1,by=c("up","ver_u"))
Zweite Methode:
test <- df2[(df2$up %in% df1$up) & (df2$ver_u %in% df1$ver_u),]
Sie geben mir unterschiedliche Anzahl von Beobachtungen und ich sehe nicht, warum sie mir einen Unterschied geben.
Als ich den Dataframe-Test mit dem folgenden Code kombinierte, erhielt ich die gleiche Anzahl von Beobachtungen, aber die beiden resultierenden Datenrahmen, die ich bekam, sind immer noch unterschiedlich.
pur1 = merge(test, df1,by=c("up","ver_u"))
Gibt es einige systematische Unterschiede bei der Verwendung von Zusammenführen und% in%?
Ich würde sehr viel Verständnis dafür haben.