如何正确使用R包中其他包的功能

Sac*_*amp 22 namespaces r package

我对此有点困惑.我有一个R包,它有一个小函数(不是包的mayor部分),其中调用包的principal功能psych.如何在DESCRIPTION和NAMESPACE中正确指定?

Depends: psychDESCRIPTION中的设置确保每次加载包时都加载mental包.这有效,但对于我的包的这么小部分来说似乎是多余的.

设置Suggests: psych和输入require("psych")函数就是我现在所做的,但是如果psych没有安装就行不通,这似乎是错误的做法(编写R扩展表示建议主要用于示例).

我想我需要导入这个功能.我尝试Imports: psych在DESCRIPTION和importFrom(psych,"principal")NAMESPACE中进行设置.这是有效的,但在没有安装精神的计算机上,它在加载我的包时会出错.

had*_*ley 20

您需要回答的基本问题是:"您是否希望该功能无需进一步努力即可供所有用户使用?".如果是,则使用imports +相应的名称空间声明,如果不是,则使用建议并在require("psych")返回时打印信息性错误消息FALSE.

我不明白你的进口相关投诉:"但是在没有安装精神的计算机上,它会在加载我的包装时出错".如果你的包装依赖,这也是如此!