【发布时间】:2021-06-20 05:10:06
【问题描述】:
我在 R 中有两个数据框:
col1 <- c("Apple pie", "Orange soda", "Pear", "Strawberry milkshake", "Kiwi")
col2 <- c("Delicious", "Refreshing", "Crunchy", "Creamy", "Sweet")
df1 <- data.frame(col1, col2)
fruits <- c("Blueberry", "Apple", "Pear", "Orange", "Watermelon", "Honeydew", "Dragonfruit", "Strawberry")
df2 <- as.data.frame(fruits)
我想看看 df1 中是否有任何值与 df2 中的值匹配例如,我希望“Apple pie”与“Apple”匹配,“Orange soda”与“Orange”匹配。
我希望得到一个如下所示的 df1:
col3 <- c("Apple", "Orange", "Pear", NA, NA)
df1 <- data.frame(col1, col2, col3)
我假设代码的结构如下:
df1 <- df1 %>%
mutate(
col3 = ifelse(df2$fruits %in% str_detect(col1),
df2$fruits, NA)
)
任何帮助将不胜感激!
【问题讨论】:
标签: r dataframe string-matching