我有這樣的情況:匹配兩個data.frame
DF1
COL1 COL2 COL3 ... a b c b d b f e a g m f
DF2
COL
一個
b
Ç
d
Ë
˚F
克
ħ
我
升
米
Ñ
ö
我想DF1的每列與只有一個列匹配的DF2並且評分DF1的每一列中出現多少DF2。如何做到這一點?
由於提前,
E.
我有這樣的情況:匹配兩個data.frame
DF1
COL1 COL2 COL3 ... a b c b d b f e a g m f
DF2
COL
一個
b
Ç
d
Ë
˚F
克
ħ
我
升
米
Ñ
ö
我想DF1的每列與只有一個列匹配的DF2並且評分DF1的每一列中出現多少DF2。如何做到這一點?
由於提前,
E.
這裏有一對夫婦的猜測:
sapply(lapply(DF1, "%in%", DF2[[1]]), sum)
lapply(DF1, function(col) length(which(col %in% DF2)))
如果DF2是data.frame作爲很可能它的名字,那麼你需要做到這一點:
lapply(DF1, function(col) length(which(col %in% DF2[[1]])))
(編輯注:加入%in%
和周圍引號 '[[1]]' 至RET甕DF2的第一和唯一的列向量,而不是一個列表)
約像什麼:
sapply(DF1, function(x) sum(x %in% DF2))
或者,因爲你已經更新您的問題聲明,DF2是data.frame
:
sapply(DF1, function(x) sum(x %in% DF2$COL))
喜歡迪文!它完美的工作!非常感謝! – Elb