【发布时间】:2020-03-28 20:33:49
【问题描述】:
我目前正在将使用 knitr 的 JSS 文章转换为 R package vignette。但是,我对小插图的位置、结构以及我应该如何处理它需要的非常长的计算时间(在普通笔记本电脑上大约需要 2 天)存有疑问。
official documentation 几乎没有提供这方面的信息。 mailing list 答案中的简短说明是我在搜索时找到的唯一信息。 Brian Ripley 在这里写道:
特别是,CRAN 确实接受带有 Sweave 插图的包裹 检查时间太长——一个需要大约 8 小时 [...]。我们只是要求我们在提交时被告知。
Hadley Wickham's description of vignettes 表示将eval = FALSE 设置为块选项。但是,在我的情况下,这不是一种可行的方法,因为需要从计算中生成数据。
This presentation 建议将/inst/doc 用于预编译和繁重的小插图。但是,这与将 /vignettes 用于包小插曲(或什么?)的新指南不太一致。
目前,我已将源文件放在/vignettes 中,并创建了一个.RData 文件,其中包含计算成本最高的对象(而且也很大)。然后脚本检查对象是否可通过该.RData 文件获得,如果不是,则创建对象。所以要完全从头开始编译和运行,.RData 文件可以简单地删除。
有人对这个问题有一些经验或建议吗?
小插图应该在/vignettes 还是/inst/doc 中?
如果首选前者,我应该将.bib、.RData等所需的文件放在哪里?
我必须承认我发现 /vignettes 与 /inst/doc 有点令人困惑。
【问题讨论】:
-
不幸的是,这确实是一个 CRAN 政策问题,而不是编程问题。最好的答案将来自给 CRAN 的电子邮件。你也可以试试 r-devel,但我怀疑他们会告诉你也去问问 CRAN。
-
@Thomas 是的,我现在明白了。我想这也是为了避免打扰 CRAN 维护人员(我敢肯定他们的时间已经太少了),并了解其他人是否以及如何处理类似问题。如果这不是不合适的,我会在这里留下问题,如果没有问题,我会稍后给维护者发电子邮件。
-
有道理。如果您确实得到了 CRAN 的答复,我鼓励您在此处发布答复,以便其他人可以找到它。他们是忙碌的人,但维护系统也是他们(主要是自我任命的)工作,所以如果他们的帮助文件不清楚,他们有责任澄清事情。
-
我遇到了同样的问题。你找到解决办法了吗?我的下一步是制作 .RData 文件数据文件,然后将它们抓取为小插图。