如何在R中移除YouTube评论语料库/数据框的非英语内容?
Hey there! 作为编程新手处理25000条YouTube评论的文本挖掘任务,确实容易被繁杂信息绕晕——不过移除非英语内容这块,有两个简单易上手的R工具方案,很适合你当前的阶段:
方案1:用cld2包快速检测语言(适合大数据集)
cld2是基于Chrome的语言检测引擎,速度超快,处理你的25000条评论毫无压力。
步骤如下:
- 先安装并加载包:
install.packages("cld2") library(cld2)
- 在你的
comments_final数据框里新增一列,标记每条评论的检测语言:
comments_final$detected_lang <- detect_language(comments_final$textOriginal)
- 过滤出仅英语的评论(
detected_lang返回的是语言代码,英语是"en"):
comments_english <- comments_final[comments_final$detected_lang == "en", ]
方案2:用cld3包(基于Google模型,准确率更优)
如果对检测准确率要求更高,可以试试cld3,它用的是Google的Compact Language Detector v3模型,对短文本的识别效果更好一些。
步骤:
- 安装加载包:
install.packages("cld3") library(cld3)
- 检测语言并过滤:
comments_final$detected_lang <- cld3::detect_language(comments_final$textOriginal) comments_english <- comments_final[comments_final$detected_lang == "en", ]
小提醒
- 语言检测不是100%完美的,特别短的评论(比如只有几个单词)可能会误判,你可以抽几条样本检查下结果
- 建议先在原始数据框
comments_final里过滤完英语评论,再重新构建语料库,这样后续的文本挖掘处理效率更高:
# 过滤后重新构建语料库 corpus <- Corpus(VectorSource(comments_english$textOriginal)) corpus <- tm_map(corpus, content_transformer(tolower))
内容的提问来源于stack exchange,提问作者Lucinho91
相关产品推荐
相关产品推荐

