我使用医疗数据,并且更喜欢在包环境中开发分析,利用R CMD check
,testthat
和devtools
。
典型的分析将从数据库中提取数据开始(通常使用冗长的连接和多行,因此不是一个简单的步骤。)
我的主要目标是保护健康信息,同时实现可重复的分析。虽然我可以去识别数据,但我仍然担心有很多潜在的识别信息,即使它是正式去识别的。因此,我非常仔细地处理去识别的数据。每次分析的数据大约为100到500Mb。
将数据放入包中的data
目录似乎是最糟糕的解决方案:数据很大,导致包创建缓慢;当查询变化并随时间变化时,它是静态的;当我不想传输受保护的数据时,更难分享代码。
我尝试了R.cache
,memoise
,并在降价文档中使用了缓存的knitr
块。
R.cache
现在似乎是最好的,但在主目录中转储了大量模糊命名的数据。 memoise
不够灵活,对于临时缓存计算而不是数据库查询似乎更好。 knitr
缓存可用于降价,但无法用于直接交互式R使用。
是否有人对基于打包的分析有中等大量受保护数据的任何其他建议或建议?