我正在为我的一个包裹写一个小故事。
在这篇文章中,我想演示这个包如何与其他由(而不是)由NAMESPACE或DESCRIPTION文件的Imports部分导入的包交互。
因此,我在我的vignette中放置了一个require调用来使用这些外部包,但是当我尝试使用这个包时,我当然得到了下面的NOTE:
* checking for unstated dependencies in vignettes ... NOTE
‘library’ or ‘require’ call not declared from: ‘RColorBrewer’有办法解决这个问题吗?还是我应该导入这些外部包,或者使用eval=FALSE“伪造”小插曲?
发布于 2012-03-28 01:55:46
将其放入Suggests:的DESCRIPTION文件中。
来自R扩展手册第6页
“建议”字段使用与“依赖”相同的语法,并列出不一定需要的包。这包括仅在示例、测试或小片段中使用的包(见1.4节编写包小片段,第26页)和函数体中加载的包。例如,假设来自package
foo的示例使用来自包bar的数据集。然后,除非要执行所有示例/测试/小片段,否则不需要让bar使用foo:拥有bar是有用的,但不是必要的。版本要求可以指定,并将由R CMD check使用。
发布于 2012-03-28 16:37:52
此外,如果vignette正确地依赖于该包,则应该有一个
% \VignetteDepends{...}语句本身:Sweave,第二部分:一揽子小插曲,R News 3/2 (2003年10月),21 - 24。
但是,您的情况可能有点不同:
我使用没有if (require ("pkgxy"))的% \\VignetteDepends{pkgxy} (描述中的Suggests: pkgxy无论如何都是必需的)来做一些我想展示的东西,但是我不想强迫用户安装所有建议的块。我在小插画的开头放了一个方框,报告了其中哪一个包是可用的,如果一个包在生成时没有,就需要一个"pkgxy来做这个“的文字。
hyperSpec软件包的“简介”就是一个例子(为了了解它的实际工作方式,您不仅需要the .Rnw,还需要更多的定义)。
https://stackoverflow.com/questions/9899943
复制相似问题