【发布时间】:2020-06-08 14:29:57
【问题描述】:
让我们考虑一个有两列word 和stem 的df。我想创建一个新列来检查stem 中的值是否包含在word 中,以及它之前或之后是否有更多字符。最终结果应如下所示:
WORD STEM NEW
rerun run prefixed
runner run suffixed
run run none
... ... ...
到目前为止,您可以在下面看到我的代码。但是,它不起作用,因为grepl 表达式应用于df 的所有行。无论如何,我认为它应该明确我的想法。
df$new <- ifelse(grepl(paste0('.+', df$stem, '.+'), df$word), 'both',
ifelse(grepl(paste0(df$stem, '.+'), df$word), 'suffixed',
ifelse(grepl(paste0('.+', df$stem), df$word), 'prefixed','none')))
【问题讨论】:
标签: r string dataframe grepl startswith