我试图对西班牙语文本进行一些文本挖掘和词云可视化。实际上我有9个不同的 .txt 文件,但这里只发布一个文件以供复制。
"我们阿根廷国民代表大会的代表们,按照由包含各省的意愿和选举召集的普通制宪会议预先达成的协议,旨在建立国家联盟,巩固正义,稳定内部和平,提供共同安全保障,促进人民福利并确保自由的好处,为了我们自己、我们的后代以及所有想要居住在阿根廷土地上的全世界的人们:恳求上帝的保护——上帝是所有理性和正义的源泉——我们颁布、制定并确立本宪法,适用于阿根廷国家。"
这个文件保存为 .txt 格式。以下是我生成正确编码的术语-文档矩阵的幼稚尝试。当我检查时,我没有得到原始文件中的文本(例如,“constitución”变成了“constitucif3n”)。我是文本挖掘的新手,知道解决方案可能涉及各种相互依存的调整,所以我想在这里询问而不是搜索4个小时。提前感谢。
#Generate Term-Document-Matrix
#Convert Text to Corpus and Clean
cleanCorpus <- function(corpus) {
corpus.tmp <- tm_map(corpus, removePunctuation)
corpus.tmp <- tm_map(corpus.tmp, stripWhitespace)
corpus.tmp <- tm_map(corpus.tmp, tolower)
corpus.tmp <- tm_map(corpus.tmp, removeWords, stopwords("spanish"))
return(corpus.tmp)
}
generateTDM <- function(path) {
cor.tmp <- Corpus(DirSource(directory=path, encoding="ISO8859-1"))
cor.cl <- cleanCorpus(cor.tmp)
tdm.tmp <- TermDocumentMatrix(cor.cl)
tdm.s <- removeSparseTerms(tdm.tmp, 0.7)
}
tdm <- generateTDM(pathname)
tdm.m <- as.matrix(tdm)
generateTDM
和cleanCorpus
函数所在的信息可能很有用。它们似乎不是tm
的一部分。 - jbaumsiconv
)可能会解决问题 - 至少如果您在UTF-8语言环境中。 - Vincent Zoonekynd