我正在尝试使用roxygen2在R包中记录一些数据集。仅考虑以下之一:

  • 我有mypkg/data/CpG.human.GRCh37.RDa
  • 包含一个名为CpG.human.GRCh37的对象
  • 和一个名为mypkg/R/cpg-data.R的文件,其中包含:
    #' @name CpG.human.GRCh37
    #' @title CpG islands - human - genome build: GRCh37/hg19
    #' @description This data set list the genomic locations of human CpG islands,
    #' with coordinates based on the GRCh37 / hg19 genome build.
    #' @docType data
    #' @usage CpG.human.GRCh37
    #' @format a \code{RangedData} instance, 1 row per CpG island.
    #' @source UCSC Table Browser
    #' @author Mark Cowley, 2012-03-05
    #' @export
    NULL
    

  • 当我充氧时,会创建mypkg/man/CpG.human.GRCh37.Rd,其中包含:
        \docType{data}
        \name{CpG.human.GRCh37}
        \alias{CpG.human.GRCh37}
        \title{CpG islands - human - genome build: GRCh37/hg19}
        \format{a \code{RangedData} instance, 1 row per CpG island.}
        \source{
          UCSC Table Browser
        }
        \description{
          This data set list the genomic locations of human CpG
          islands, with coordinates based on the GRCh37 / hg19
          genome build.
        }
        \author{
          Mark Cowley, 2012-03-05
        }
        \usage{CpG.human.GRCh37}
        \keyword{datasets}
    

    并且export(CpG.human.GRCh37)被添加了NAMESPACE文件。

    但是当我R CMD CHECK我得到:
    ...
    ** testing if installed package can be loaded
    Error in namespaceExport(ns, exports) :
      undefined exports: CpG.human.GRCh37
    Error: loading failed
    ...
    

    尽管我假设mypkg/data/<name>.RDa是一个不错的初衷,但我没有告诉R在哪里可以找到此数据集。
    任何提示都会很棒。

    如果Hadley在观看,我会注意到未创建\ usage节,并且@usage指令将被忽略。

    我在R 2.13.1上使用roxygen-2.2.2

    最佳答案

    这需要2个修复程序:

  • Writing R extensions 1.1.5 Data in packages中所述,将对象另存为.rda而不是.RDa
  • 从Roxygen
  • 中删除@export

    关于r - 用roxygen2记录数据集,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9561684/

    10-08 22:10