gpt4 book ai didi

r - 使用 R - "inverse"拼写检查器搜索字符向量中单词的拼写错误

转载 作者:行者123 更新时间:2023-12-02 01:39:04 24 4
gpt4 key购买 nike

我正在对一个大型数据库进行文本挖掘,以创建指示变量,这些变量指示观察的评论字段中某些短语的出现。注释是由技术人员输入的,因此使用的术语始终一致。

但是,在某些情况下,技术人员会拼写错误的单词,因此我的 grepl() 函数无法捕获该短语(尽管拼写错误)出现在观察中。理想情况下,我希望能够将短语中的每个单词提交给一个函数,该函数将返回该单词的几个常见拼写错误或拼写错误。这样的 R 函数是否存在?

有了这个,我可以在注释字段中搜索这些短语拼写错误的所有可能组合,并将其输出到另一个数据框。这样,我可以根据具体情况查看每个事件,以确定技术人员是否确实描述了我感兴趣的现象。

我在 Google 上搜索过,但只找到了 R 的实际拼写检查包的引用。我正在寻找的是一个“反向”拼写检查器。由于我要查找的短语数量相对较少,因此我实际上可以手动检查拼写错误;我只是认为将这种功能内置到 R 包中以供将来的文本挖掘工作使用会很好。

感谢您的宝贵时间!

最佳答案

正如 Gavin Simpson 所建议的,您可以使用 aspell。我想为了让它工作,你需要安装 aspell。在许多 Linux 发行版中,它是默认的;不知道其他系统有没有,也不知道是否是用R安装的。

请参阅以下函数的使用示例。这取决于您的输入数据以及您想要对结果执行什么操作(例如,使用第一个建议纠正拼写错误),而您没有指定:

check_spelling <- function(text) {
# Create a file with on each line one of the words we want to check
text <- gsub("[,.]", "", text)
text <- strsplit(text, " ", fixed=TRUE)[[1]]
filename <- tempfile()
writeLines(text, con = filename);
# Check spelling of file using aspell
result <- aspell(filename)
# Extract list of suggestions from result
suggestions <- result$Suggestions
names(suggestions) <- result$Original
unlink(filename)
suggestions
}

> text <- "I am text mining a large database to create indicator variables which indicate the occurence of certain phrases in a comments field of an observation. The comments were entered by technicians, so the terms used are always consistent. "
> check_spelling(text)
$occurence
[1] "occurrence" "occurrences" "occurrence's"

关于r - 使用 R - "inverse"拼写检查器搜索字符向量中单词的拼写错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14655040/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com