如何使用%in%运算符在R语言中移除停用词并修复相关代码
R语言停用词过滤代码修复方案
现有代码问题说明
你提供的两段代码分别存在语法错误和逻辑问题:
- 第一段
removeWords调用缺少闭合右括号,stopwords函数名和括号之间有冗余空格 - 第二段
%in%运算符右侧错误添加了words =参数名,且筛选逻辑和「移除停用词」的需求相反
修复后的实现代码
方案1:使用tm包的removeWords函数
# 首次使用先安装依赖包,安装过可跳过 # install.packages("tm") library(tm) new_words <- c("it", "apple", "carrot", "after", "snake") # 修复后的第一种解决方案 removeWords(new_words, words = stopwords(kind = "en"))
说明:该方案会把匹配到的停用词替换为空字符串,若要直接删除空值,可后续再加一步过滤逻辑
方案2:使用%in%运算符实现
library(tm) new_words <- c("it", "apple", "carrot", "after", "snake") # 修复后的%in%实现方案,直接过滤掉停用词 new_words[!new_words %in% stopwords(kind = "en")]
说明:该方案直接返回过滤后的纯有效单词向量,无空值冗余,更符合常规使用需求
内容的提问来源于stack exchange,提问作者Ell
相关产品推荐
相关产品推荐

