如何正确添加import(data.table)
to the NAMESPACE
自动使用文件devtools
?
一般来说,如果我的包使用data.table
我只是手动写入,但是无法使用@export
and devtools::document
来创建NAMESPACE
文件正确,因为它要么覆盖我所做的添加,要么根本不更新文件。
另外,它说不要手动编辑它......
Thanks
Sample package/R/function.R
code
#' @export
#' @import data.table
test_data_table = function(dt) {
dt[, a := 3]
}
调用示例
> test_data_table
function(dt) {
dt[, a := 3]
}
<environment: namespace:package>
> test_data_table(dt)
Show Traceback
Rerun with Debug
Error in `[.data.frame`(x, i, j) : could not find function ":="
你可能不应该使用import(*)
无论如何,除非你really需要从包中导出的每个对象。相反,使用importFrom(pkg, obj1, obj2, ...)
仅导入您需要的对象。
来自编写 R 扩展手册,S1.5.1:
Using importFrom
有选择地而不是import
这是一种很好的做法,在从具有十多个导出的包中导入时尤其值得推荐。
尽管如此,如果你do需要导入所有内容,使用#' @import data.table
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)