You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用R识别文本指定关键词并输出对应布尔判定结果

R实现文本关键词匹配与多匹配标记

完整实现代码

# 1. 构造输入数据
body <- c(" i want a computer", "use my laptop", "buy a macbook", "found a good deal on macbook and windows laptop")
words_to_be_identified <- c("Computer", "laptop", "MacBook")

# 2. 逐关键词匹配(默认忽略大小写,适配关键词与文本大小写不一致的场景)
match_matrix <- sapply(words_to_be_identified, function(keyword) {
  grepl(pattern = keyword, x = body, ignore.case = TRUE)
})

# 3. 新增Multiple列:判断单条文本是否匹配多个关键词
match_matrix <- cbind(match_matrix, Multiple = rowSums(match_matrix) > 1)

# 4. 按期望格式输出(转置后行对应关键词/标记,列对应原文本顺序)
t(match_matrix)

输出结果

运行上述代码后输出结果和要求完全一致:

[,1]  [,2]  [,3]  [,4]
Computer TRUE FALSE FALSE FALSE
laptop  FALSE  TRUE FALSE  TRUE
MacBook FALSE FALSE  TRUE  TRUE
Multiple FALSE FALSE FALSE  TRUE

可选调整说明

  • 若需要严格区分大小写匹配,删除grepl函数中的ignore.case = TRUE参数即可
  • 若需要将结果转为数据框格式做后续分析,执行result_df <- as.data.frame(match_matrix)即可

内容的提问来源于stack exchange,提问作者Reshmi Kumpakha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 15:54:02