我正在尝试通过匹配每个数据帧上的列(val)来查找和匹配两个数据帧(df1&df2),第一数据帧列包含文本值,而第二数据帧(df2)列包含多个文本值,以逗号分隔,这是数据帧的视图
val=c("AAAA","XXXX","BBBB","YYYY","ZZZZ","MMMM","YYYY","CCCC","GGGG")
df1 <- as.data.frame(val)
val=c("AAAA,BBBB","BBBB,CCCC,FFFF","CCCC,DDDD,GGGG,FFFF","GGGG","")
id =c(1,2,3,4,5)
df2 <- as.data.frame(val,id)
如果在df2中找到了df1的值,那么我需要df1中新列的ID
答案 0 :(得分:0)
看看下面的代码是否有帮助。
library(tidyverse)
df2 = df2 %>%
mutate(val=str_split(val, ",", n=Inf)) %>%
unnest
df1 = df1 %>%
left_join(df2, by="val")