对于某些功能,导入的包不适用于我的R包中的包?

时间:2017-07-04 13:30:50

标签: r

我建立了自己的包。我在包中导入了我需要的最重要的包。在这些包中有一些函数没有被包导出(我没有在包的命名空间中找到它们)。我需要这些功能。当我打电话给他们时,我得到一个错误,即找不到那些功能。那么,我怎么能解决这个问题。另外,这些包如何在不使用@export的情况下在包中使用此功能!有什么帮助吗?

基于答案:

我理解我在R代码中这样做:我需要以下功能:

args <- preproc(c(as.list(environment()), call = match.call()),
               check_matrix,
                check_fammat,
                check_parmat,
                check_par2mat)
           list2env(args, environment())

然后我必须这样做:

VineCopula:::preproc()

然后如何致电args

1 个答案:

答案 0 :(得分:1)

您可以使用

调用非导出函数
packagename:::functionname()

但是不建议这样做,因为在将来的软件包版本中可能不支持这些功能。

如果您想在自己的库中使用自己库中的非导出函数,可以使用functionname(),尽管某些软件包开发人员仍然更喜欢packagename:::functionname()