我正在使用&t;'做一些初始文本挖掘。和' RWeka'使用Knitr进行再现性。
我试图根据两个文本文件获取语料库的术语 - 文档矩阵,当我在RStudio中运行代码并将其编织成HTML文件时,该过程有不同的结果:{{ 0}}
...当我尝试其他文档输出PDF和Word输出时:
同意RStudio。
而且,我需要一个HTML输出....
对可能发生的事情有所了解?
这是.Rmd
代码
---
title: "test"
author: "me"
output: word_document
---
```{r init, echo=FALSE, warning=FALSE, cache=TRUE, message=FALSE}
library(knitr)
library(tm)
library(SnowballC)
library(RWeka)
setwd("~")
options(mc.cores=1) # some problems with parallel processing
```
```{r 1-gram-test, echo=FALSE, eval=TRUE,cache=TRUE}
doc1 <- c("en un lugar de la mancha de cuyo nombre no quiero acordarme habitaba un hidalgo de los de adarga antigual, rocín flaco y galgo corredor")
doc2 <- c("había una vez un barquito chiquitito, que no sabía, que no sabía, que no sabía navegar... pasaron un dos tres cuatro cinco seis semanas y el barquito navegó.")
docs <- c(doc1, doc2)
es <- Corpus(VectorSource(docs),
readerControl = list(reader = readPlain,
language = "ES-es", load = TRUE))
es
# convert to plain text
es1 <- tm_map(es, PlainTextDocument)
monogramtok <- function(x) {
RWeka::NGramTokenizer(x, RWeka::Weka_control(min = 1, max = 1))
}
es_tdm1 <- TermDocumentMatrix(es1)
esmono_tdm1 <- TermDocumentMatrix(es1,
control = list(tokenize = monogramtok,
wordLengths = c(1, Inf))) #,
printf("es_tdm1")
es_tdm1
printf("esmono_tdm1")
esmono_tdm1
sessionInfo() R版本3.2.3(2015-12-10) 平台:x86_64-apple-darwin13.4.0(64位) 运行于:OS X 10.11.4(El Capitan)
区域设置: [3] en_US.UTF-8 / en_US.UTF-8 / en_US.UTF-8 / C / en_US.UTF-8 / en_US.UTF-8
附加基础包: [3] stats graphics grDevices utils数据集方法库
其他附件包: [3] R.utils_2.2.0 R.oo_1.20.0 R.methodsS3_1.7.1 dplyr_0.4.3 xtable_1.8-0
[6] pander_0.6.0 RWeka_0.4-24 SnowballC_0.5.1 tm_0.6-2 NLP_0.1-9
[11] knitr_1.12.3
答案 0 :(得分:3)
我遇到了类似的问题,然后意识到我正在使用选项knitr
缓存我的cache=TRUE
块(正如您似乎已经设置的那样)。
如果缓存的块有副作用或依赖外部资源,这可能会导致一些非常微妙的错误。
当我禁用缓存时,我的可重现性问题就消失了。