0
私は私は2つの特定の変数(アップとver_u)を経由してマージしたい2つのデータセットがあります。私がやりたい何なぜmergeと%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
はどこ彼らのアップと試合ver_u DF2のサブセットを取り出すことですdf1のものと一致する。私は2つの異なる方法でこれを行い、私は異なった答えを得ました。
最初の方法:
pur <- merge(df2, df1,by=c("up","ver_u"))
第二の方法:
test <- df2[(df2$up %in% df1$up) & (df2$ver_u %in% df1$ver_u),]
彼らは私に観測の異なる数を与えているし、彼らは私に違いを与えている理由は、私は表示されません。
次のコードでデータフレームテストでマージを使用したとき、私は同じ数の観測を取得しましたが、得られた2つのデータフレームはまだ異なります。
pur1 = merge(test, df1,by=c("up","ver_u"))
mergeと%in%の使用にはいくつかの系統的な違いがありますか?
これについての洞察は大いにありがたいです。