R包依赖

标签 r dependencies package r-package cran

我正在尝试构建一个 R 包,但似乎包依赖项存在一些问题。如果我在 R 中运行代码,我需要包“rgdal”和“rgeos”,所以为了从中创建包,我:

  • 在 NAMESPACE 文件中添加了“import(rgdal, rgeos)”行
  • 在描述文件
  • 中添加了“Depends: rgeos, rgdal”行

    当我运行 R CMD 检查(构建后)时,我收到一个错误消息:
    * checking package dependencies ... ERROR
    Benötigte, aber nicht verfügbare Pakete:
      'rgeos' 'rgdal'
    
    See the information on DESCRIPTION files in the chapter 'Creating R
    packages' of the 'Writing R Extensions' manual.
    

    德语部分的错误:“Benötigte, aber nicht verfügbare Pakete:” = “需要,但没有可用的包”。

    我已阅读上述手册并了解使用导入、建议或增强的选项,但我很确定这取决于我必须使用的选项,因为在我的代码功能中,我使用的是外部功能这两个包。

    我做错了什么?

    最佳答案

    R 认为您的系统上没有这些软件包。

    现在你当然知道你这样做了。有什么区别?

    那么你可能将它们安装在另一个目录中 R CMD check不看。解决此问题的一种方法在“R Internals”手册(引用“Writing R Extensions”)的第 7 节“工具”中描述,并使用文件 ~/.R/checkEnviron设置在 R CMD check 期间使用的环境变量.

    例如,我有

    # edd Apr 2003  Allow local install in /usr/local, also add a directory for
    #               Debian packaged CRAN packages, and finally the default dir 
    # edd Jul 2007  Now use R_LIBS_SITE, not R_LIBS
    R_LIBS_SITE=${R_LIBS_SITE-'/usr/local/lib/R/site-library:'
                              '/usr/lib/R/site-library:/usr/lib/R/library'}
    

    我刚刚打破了一条长线(中间没有两个撇号)。

    关于R包依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10146348/

    相关文章:

    r - 如何使用 e_charts() 在同一图表中组合条形图和折线图?

    R:如何在列表中将data.frame子集化并返回data.frame?

    android - 在gradle构建期间检索AWS数据

    android - 如何用jar文件替换谷歌依赖

    java - 尝试从类变量中提取包名称时出错

    java - 我怎么知道给定包的类

    r - ggplot2 对齐两个分面图的顶部

    java - ClassNotFoundException : org. hibernate .bytecode.instrumentation.internal.FieldInterceptionHelper

    java - 将类添加到包中

    r - 使用 ggplot2 绘制按时间顺序排列的时间线