在R中创建包含西班牙语文本的语料库

在R中创建包含西班牙语文本的语料库,r,encoding,text-mining,word-cloud,R,Encoding,Text Mining,Word Cloud,尝试对西班牙语文本进行一些文本挖掘和wordcloud可视化。我实际上有9个不同的.txt文件,但只会发布一个用于复制 “阿根廷国民议会代表团,reunidos en 自愿和自愿的总宪法会议 原帕克托斯省, 国家宪法的目标,司法的目标, 巩固拉巴斯内政部,国防部长,推广员 比内斯塔将军,自由实益组织,第 nosotros、para nuestra posteridad、para todos los hombres del mundo 阿根廷人苏伊洛岛上的一座安静的住宅:保护区 迪奥斯,托达·拉松

尝试对西班牙语文本进行一些文本挖掘和wordcloud可视化。我实际上有9个不同的.txt文件,但只会发布一个用于复制

“阿根廷国民议会代表团,reunidos en 自愿和自愿的总宪法会议 原帕克托斯省, 国家宪法的目标,司法的目标, 巩固拉巴斯内政部,国防部长,推广员 比内斯塔将军,自由实益组织,第 nosotros、para nuestra posteridad、para todos los hombres del mundo 阿根廷人苏伊洛岛上的一座安静的住宅:保护区 迪奥斯,托达·拉松和司法部:奥德内斯、德克雷塔莫斯和 阿根廷宪法委员会,阿根廷国民议会。”

该文件另存为.txt文件。下面是我用正确的编码生成术语文档矩阵的天真尝试。当我检查它时,我没有得到原始文件中的文本(“Constructción”变成“Constructcif3n”,例如)。我是文本挖掘的新手,知道解决方案可能涉及多种相互依赖的调整,我想我应该在这里提问,而不是搜索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)
#生成术语文档矩阵
#将文本转换为语料库并清除

cleancurpus回答:确保原始文本文件是UTF-8编码的。要做到这一点,我必须在Mac上的TextEdit中更改我的保存首选项。这使得一切都能无缝地工作。

关于函数
generateTDM
cleancopus
存在的位置的信息可能会有用。它们似乎不是
tm
的一部分。嘿,你说得对。现在将为CleanCurpors添加代码。GenerateDM也是一个自定义函数-代码如上图所示。啊,是的,隐藏在显而易见的地方!将文件转换为UTF-8(例如,使用
iconv
)可能会解决问题——至少在UTF-8区域设置中是这样。@VincentZoonekynd什么是UTF-8区域设置?我正在用R编码,使用RStudio。