繁体   English   中英

(如何)CRAN 上的包可以导入不在 CRAN 上的包?

[英](How) can a package on CRAN import a package not on CRAN?

综合 R 存档网络 (CRAN) 上的包显然可以直接导入 CRAN 上的其他包。

CRAN 上的包也可以导入不在CRAN 上的包吗? - 如果没有,我想选项是:

  • 将另一个包放到 CRAN 上,或者
  • 抽象出必要的部分以直接包含(而不是导入整个包)
  • 其他方法?

我很感兴趣,因为有时将贡献放在单独的包中更有意义,特别是如果贡献可能单独使用或在其他包中使用。

我不这么认为。

编写 R 扩展指定您可以在描述文件中包含一个Additional_repositories字段。

但是, CRAN 存储库政策说:

CRAN 包所依赖的包应该可以从主流存储库中获得:如果“Suggests”或“Enhances”字段中提到的任何一个都不是来自这样的存储库,则应在“Additional_repositories”字段中指定在存储库中获取它们的位置描述文件(以逗号分隔的存储库 URL 列表)或其他访问方式,在“描述”字段中描述。

  • 这里的“主流”大概是指 CRAN(也许是?Bioconductor)( 这个 2015 年的 bioc-devel 线程表明 CRAN 和 Bioconductor 都是“主流”)
  • 这里的“依赖”是指导入/链接到/依赖

除了您建议的解决方案(在 CRAN 上获取软件包在您的软件包中包含必要的代码)之外,我想不出任何解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM