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

如何在R的tidytext中为德法多语言文本配置停用词生成Ngram

多语言停用词配置方案

tidytext的stop_words数据集本身就包含多种语言的停用词,你只需要筛选出德语(language = "de")、法语(language = "fr")和原有英文的停用词,合并成一个去重的列表,替换原代码里的停用词判断即可。

步骤1:构建多语言停用词表

先加载所需R包,筛选并合并目标语言的停用词:

library(tidytext)
library(dplyr)

# 合并英文、德语、法语停用词并去重
multi_lang_stopwords <- stop_words %>%
  filter(language %in% c("en", "de", "fr")) %>%
  select(word) %>%
  distinct()

步骤2:修改原Ngram生成代码

把原代码中调用stop_words$word的部分,替换为我们构建的多语言停用词表:

text_graph <- text_df %>%
  unnest_tokens(bigram, text, token = "ngrams", n = 2) %>%
  separate(bigram, c("word1", "word2"), sep = " ") %>%
  filter(!word1 %in% multi_lang_stopwords$word) %>%
  filter(!word2 %in% multi_lang_stopwords$word) %>%
  filter(!is.na(word1)) %>%
  filter(!is.na(word2)) %>%
  count(word1, word2, sort=TRUE) %>%
  filter(n >= 9) %>%
  graph_from_data_frame()

补充说明

  • 如果文本中还有其他语言,可在language %in% c()里添加对应语言代码(比如西班牙语是"es")
  • 用distinct()是为了避免不同语言间出现重复停用词,减少冗余判断

内容的提问来源于stack exchange,提问作者Anton Kotov

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 07:00:05