我正在尝试将脚本从使用 tm 迁移到 quanteda。阅读 quanteda 文档,有一种关于“下游”应用更改以使原始语料库保持不变的理念。好的。
我之前编写了一个脚本来查找我们的 tm 语料库中的拼写错误,并得到了我们团队的支持来创建手动查找。所以,我有一个包含 2 列的 csv 文件,第一列是拼写错误的术语,第二列是该术语的正确版本。
以前使用 tm 包我是这样做的:
# Write a custom function to pass to tm_map
# "Spellingdoc" is the 2 column csv
library(stringr)
library(stringi)
library(tm)
stringi_spelling_update <- content_transformer(function(x, lut = spellingdoc) stri_replace_all_regex(str = x, pattern = paste0("\\b", lut[,1], "\\b"), replacement = lut[,2], vectorize_all = FALSE))
然后在我的 tm 语料库转换中,我这样做了:
mycorpus <- tm_map(mycorpus, function(i) stringi_spelling_update(i, spellingdoc))
将此自定义函数应用于我的 quanteda 语料库的等效方法是什么?