我在尝试在我自己的一个包中导入一个包(即“robfilter”)时遇到了问题。我尝试使用的其中一种方法 adore.filter 在这一行失败:
data(critvals)
出现错误“未找到数据集‘临界值’”。
如果我通过 require(robfilter) 加载库,该函数工作正常。然而,这意味着为了使用我调用adore.filter的自定义包,我必须加载我自己的包,然后加载robfilter。不是一个大问题,但有点烦人。
我不确定问题是否是我需要做一个额外的步骤来使我的包中的临界值可见,或者包作者是否需要做一些事情(并且没有做)来添加critvals 到它的包命名空间; robfilter NAMESPACE 文件中没有“critvals”的迹象。我以前没有遇到过这个问题,也不太明白在包中使用 data() 应该如何工作。
最佳答案
据我所知,有两种解决方案:
因此,如果您将 robfilter 放在描述文件的depends 部分,它会起作用。但是在我的情况下(两个都是我的包),我试图避免 Depends 解决方案,因为它加载了导入的包,并且任何其他包都需要依赖于它的导入包......看到我的 question 与你的完全相同但不是在同一个上下文中。
关于使用 data() 的 R 包命名空间问题——未找到数据集,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22389993/