获取R包所需外部数据的最佳方法

获取R包所需外部数据的最佳方法,r,cran,R,Cran,我有一个从名字预测性别的方法。要做到这一点,需要几个更大的数据集。我把这些放进了一个盒子里。理想情况下,gender包可以依赖于genderdata包,并且这两个包都可以被CRAN接受。不过,CRAN似乎不会接受genderdata包,因为它太大了(26MB)。(我猜“大数据”>=5MB。) 所以我的问题是:如果我不能在Imports:文件的DESCRIPTION中包含genderdata包,那么将该数据放入gender包的最佳方法是什么 我的想法是依靠devtools并提供如下功能: inst

我有一个从名字预测性别的方法。要做到这一点,需要几个更大的数据集。我把这些放进了一个盒子里。理想情况下,
gender
包可以依赖于
genderdata
包,并且这两个包都可以被CRAN接受。不过,CRAN似乎不会接受
genderdata
包,因为它太大了(26MB)。(我猜“大数据”>=5MB。)

所以我的问题是:如果我不能在
Imports:
文件的
DESCRIPTION
中包含
genderdata
包,那么将该数据放入
gender
包的最佳方法是什么

我的想法是依靠
devtools
并提供如下功能:

install_gender_data <- function() {
  if(!require(genderdata)) devtools::install_github("lmullen/gender-data-pkg")
}

安装性别数据查看Hadley Wickham的“babynames”软件包。

听起来不错。您是否可以包含数据集的迷你版本,这样您的包就可以在不需要大数据的情况下运行一些测试?这是一个聪明的想法。我想知道如何在不访问数据包的情况下让测试通过CRAN/Travis。可能是主观观点,但CRAN包在本质上应该是通用的。如果你的软件包只预测一个国家的名字,那就不是很普遍了。建议:只包含一个数据样本,然后非常清楚地说明函数的数据格式。然后用户可以创建自己的数据集。此外,可以轻松下载数据,例如使用Point Take。但我要说的是,一个包应该很好地解决一个特定的问题。在科学中可能意味着抽象和概括;在历史上,它意味着依靠细节。当我有机会的时候,我会添加欧洲数据。@Andrie CRAN软件包应该是通用的谁说的?我对那个软件包很熟悉。但它不会在软件包安装后下载数据。data raw中下载数据的脚本用于构建包,并从构建包本身中排除。