目标: 我有一个包含很多单词的文档。我需要找出哪些单词有拼写错误。
我为此安装了 WordNet 3.0。
使用下面的命令,我可以检查单词是否真的存在于 wordnet 数据库中,但这需要我指定词性,即名词、代词等。我可能事先不知道
filter <- getTermFilter("ExactMatchFilter", "car", TRUE)
terms <- getIndexTerms("NOUN", 5, filter)
请让我知道在 R 中解决我的问题的方法
目标: 我有一个包含很多单词的文档。我需要找出哪些单词有拼写错误。
我为此安装了 WordNet 3.0。
使用下面的命令,我可以检查单词是否真的存在于 wordnet 数据库中,但这需要我指定词性,即名词、代词等。我可能事先不知道
filter <- getTermFilter("ExactMatchFilter", "car", TRUE)
terms <- getIndexTerms("NOUN", 5, filter)
请让我知道在 R 中解决我的问题的方法
一种方法:
library(wordnet)
inWordnet <- function(w, pos = c("ADJECTIVE", "ADVERB", "NOUN", "VERB")) {
for (x in pos) {
filter <- getTermFilter("ExactMatchFilter", w, TRUE)
terms <- getIndexTerms(x, 5, filter)
if (!is.null(terms)) return(TRUE)
}
return(FALSE)
}
inWordnet("car")
# [1] TRUE
或矢量化:
vInWordnet <- Vectorize(inWordnet, vectorize.args = c("w", "pos"))
vInWordnet(c("car", "asdas"))
# car asdas
# TRUE FALSE