我正在使用devtools
. 我想让包从文件/连接中加载数据(根据构建包的日期而有所不同)。数据量很大,因此最好在构建包期间一次性解析和加载数据。
目前,我有一个 data.R 文件,该文件R/
将数据分配给包级变量,这些值是在包安装期间分配的(或者至少这是看起来正在发生的事情)。这种不太理想的设置大部分都有效。为了使包的所有实例都具有相同的数据,我必须将数据文件与包一起分发(目前它inst/
在构建包之前由帮助脚本复制到),而不是仅仅将它们全部打包在一起。一定会有更好的办法。
如:
- 在包构建期间生成 .rda 文件(但这需要在包安装期间不运行相同的代码)
- 我可以用 Makefile 做到这一点,但这似乎有点矫枉过正
- 我可以拥有仅在包构建期间而不是在安装期间运行的 R 代码吗?
- 运行 R 代码
data/
- 但是数据是使用相关包中的代码进行处理的。我可以用
Collate
(我认为)来解决这个问题,但是我必须维护所有.R
文件的顺序(但是由于增加了复杂性,我还不如使用 Makefile?)
- 但是数据是使用相关包中的代码进行处理的。我可以用
- 构建两个包,一个包含我想要的所有代码,一个包含数据。
- 显而易见,聪明的事情我没有想到。
tl;dr:有哪些方法可以将动态更改数据的快照添加到为部署而冻结的 R 包?