所以我试图在基于某些 ID 列的条件下从参考表中获取值
ID = c("A","B","C","D","E")
code = c(1,2,3,4,5)
Ref= data.frame(ID,Ref)
ID = c("A","B","B","C","D","Z")
df= data.frame(ID)
匹配值将是
c("1","2","2","3","4","Na")
并且我想获得匹配值,例如“检查 df$ID == Ref$ID 是否存在,如果是,则在应用程序中的匹配行上获取 Ref$code”“B 在 Ref ID 中 -> 2 是代码”或“” Z 不在参考 ID 中 -> Na 是代码“
我尝试的最后一件事是这样的
ifelse(unlist(df$ID ) %in% Ref$ID ,
**Ref[,(which(unlist(df$ID ) %in% Ref$ID))]**, 'NA')
测试效果很好,但我无法提取正确的值(这里 y 试图获取与之对应的行)
我试图不创建新列,而只是获取值并将其注入公式中
感谢您的帮助
你应该使用
merge
> merge(df, Ref, all = TRUE)
ID code
1 A 1
2 B 2
3 B 2
4 C 3
5 D 4
6 E 5
7 Z NA