我目前正在将一篇JSS文章转换knitr为一个R 包小插图.但是,我对插图的位置,结构和我应该如何处理所需的非常长的计算时间有疑问,这在普通笔记本电脑上需要大约2天.
在官方文件提供几乎对此没有任何信息.邮件列表中的答案中的简短注释是我在搜索时找到的唯一信息.Brian Ripley在这里写道:
特别是,CRAN确实接受带有Sweave小插图的包裹,这些小插曲需要很长时间才能检查 - 一个需要大约8个小时[...].我们只是要求在提交时告知我们.
哈德利威克姆对小插曲的描述说eval = FALSE是一个大块的选择.但是,在我的情况下,这不是一种可行的方法,因为需要从计算中生成数据.
此演示文稿表明,/inst/doc将用于预编译和重型小插曲.但是,这与使用/vignettes包装晕影的新指南(或什么?)不太一致.
目前,我已经放置了我的源文件,/vignettes并且我创建了一个.RData文件,其中包含计算量最大的对象(并且也非常大).然后脚本检查对象是否可通过该.RData文件获得,如果没有,则创建对象.因此,从头开始完全编译和运行,.RData可以简单地删除该文件.
有没有人对这个问题有一些经验或指示?小插图应该在/vignettes或/inst/doc?如果是前者是首选,我在哪里放置所需的文件,如.bib,.RData等?我必须承认我发现/vignettesvs /inst/doc有些令人困惑.
我正在使用32位Windows 7 上的R 3.1.0(以及运行Windows 8 64位的另一台计算机上)构建一个软件包,我正在使用knitr使用Markdown编写小插图.我希望在CRAN上发布这个包,所以我使用R CMD检查来检查我的演示,数据集和小插图是否都表现正常.我把我的小插图保存为.Rmd文件(而不是将它们放在包构建过程之外并将它们存放在inst/doc中),因为它们作为我的包的额外测试并且不管怎样都不是很大.
我的问题是在构建我的小插图时R CMD检查失败,即使我运行R CMD构建然后R CMD INSTALL - 构建一切正常.查看日志文件,它似乎失败了,因为它试图评估我明确告诉knitr不要评估的代码.作为一个通用的例子,如果我写
```{r example-chunk eval=c(1:3, 5:6), tidy=FALSE}
foo = 5
bar = 3
## don't evaluate the next line
file.show("i/dont/really/exist.csv")
## ok, start evaluating again
foobar = foo*bar
```
Run Code Online (Sandbox Code Playgroud)
在.Rmd文件中,运行R CMD检查将失败,因为它将尝试评估第4行.但是,如果我运行R CMD build mypackage然后R CMD install --build mypackage.tar.gz(我知道这是因为我可以去我的Rlibs文件夹并在mypackage/doc中找到完美的html小插图.同样,如果运行R CMD Sweave来构建小插图,我也会正确评估大块.
如果你想自己尝试一下,我正在构建的软件包(我遇到的问题)在Github上:https://github.com/mkoohafkan/flowdurr-edu.您可以查看raw/packagemaker.html以获取相关说明,希望它很简单(R代码贯穿包制目录,构建帮助文件并将一些手动编辑的文件复制到包目录中).R CMD检查在我的所有晕影上失败:当构建flowdurr-datasets.Rmd时,它坚持用虚假路径评估一条线,即使我告诉它不要.在构建hspf-analysis.Rmd时,R CMD检查坚持评估我排除的行,因为它需要很长时间才能完成(使用rgenoud来拟合某些分布参数).R CMD检查也在vignette.Rmd上失败,但原因不同; 我故意抛出错误来展示你不能用特定功能做什么的例子,而knitr没有问题R …