我正在为自定义程序包创建新功能,让我们将其称为customR
。在NAMESPACE
我们导入了许多其他包,以便在customR
中使用。在开发新功能时,我想要一种简单而强大的方法来加载customR
导入的所有包。
我当然可以简单地使用library
手动加载import
customR
中的每个包NAMESPACE
。但是,有很多软件包(例如下面的代码),我更喜欢一个更强大的解决方案,而不是简单地从NAMESPACE
文件复制下面的文件,并用{{1}查找和替换import
}:
library
虽然我没想到它会起作用,但我尝试了import(data.table)
import(dplyr)
import(ensurer)
import(jsonlite)
import(lubridate)
import(magrittr)
import(mplyr)
import(reshape2)
import(scales)
import(stringr)
import(zoo)
importFrom(plyr,rename)
和loadNamespace
,当我使用requireNamespace
时,它没有显示导入的包,因此它们似乎无效。
要明确的是,在正常情况下加载search()
时,我不希望attach
这些包。相反,在开发过程中,我只是希望能够在临时的基础上快速,简单,稳健地customR
attach
在我开发新内容时import
使用的所有customR
包customR
的函数。
答案 0 :(得分:0)
你能不能只创建一个新的R文件,例如。 custom.R,包含上面的内容,只需在需要时加载它。这样你只需要在制作自定义文件时使用一次库。这样,如果你更新任何软件包,你只需要重新运行源代码,它就会覆盖以前的库。
r(r + 1)/2