gpt4 book ai didi

r - 创建新列以显示 dplyr 中字符串的部分匹配

转载 作者:行者123 更新时间:2023-12-04 11:37:41 25 4
gpt4 key购买 nike

我正在尝试创建一个新列来显示我的数据框中两列中的字符串是否存在任何匹配项。 This question 几乎就是我要问的,但我不想过滤,而是想创建一个新列来显示是否存在匹配项(TRUE 或 FALSE)。

所以这是一个示例数据框:

 transcript        target
he saw the dog saw
she gave them it gave
watch out for danger
real bravery brave

我想创建一个新列来显示两者之间的任何匹配:

 transcript        target    match
he saw the dog saw T
she gave them it gave T
watch out for danger F
real bravery brave T

我更愿意使用 dplyr() 但我愿意接受其他建议!

最佳答案

使用 stringr::str_detect 我们可以检查 transcript 是否包含 target

library(stringr)
library(dplyr)
df %>% mutate_if(is.factor, as.character) %>% #If transcript and target are character class in your df then no need to this step
mutate(match = str_detect(transcript,target))


transcript target match
1 he saw the dog saw TRUE
2 she gave them it gave TRUE
3 watch out for danger FALSE
4 real bravery brave TRUE

关于r - 创建新列以显示 dplyr 中字符串的部分匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51821601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com