R包:使内部数据不懒惰

时间:2016-12-21 18:21:42

标签: r package lazy-loading internal

我构建了一个包含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个科目未回答此问题:

Automatic loading of data from sysdata.rda in package

How do you handle R Data internal to a package?

0 个答案:

没有答案