我构建了一个包含devtools(https://hilaryparker.com/2014/04/29/writing-an-r-package-from-scratch/)数据的R包。
我将数据放在R/sysdata.rda
中,因为我的函数只使用了数据:
use_data(mydf1, mydf2, mydf3, internal = TRUE)
use_data_raw()
我需要非常快的函数,因此我在LazyData: false
文件中写了DESCRIPTION
。
当我第一次使用我的包的功能时,我得到了:
library(myPackage)
system.time(myFunction(...))
user system elapsed
1.53 0.11 1.66
然而,当我第二次使用相同的函数时,我得到了相同的输入:
system.time(myFunction(...))
user system elapsed
0.05 0.00 0.04
因此,我猜我的内部数据是延迟加载的。我还猜测LazyData: false
文件中的DESCRIPTION
仅与./data
中的数据有关,而与内部数据(R/sysdata.rda
)无关:
1)我说错了吗?
2)如果是,我怎样才能使内部数据不是懒惰数据?
以下2个科目未回答此问题: