【问题标题】:Trouble loading R package data加载 R 包数据时遇到问题
【发布时间】:2017-03-01 13:07:54
【问题描述】:

我已经开发了一个 R 包,但由于某种原因,当包被 Roxygenised 和安装时,该包附带的数据集没有正确加载。我在包的 R 文件夹中有一个 .R 脚本,看起来像这样

#' Score Card
#' @docType data
#' @name scoreCard
#' @aliases scoreCard
#' @format An object of class \code{data.frame} with 119 rows and 3 columns.
#' \describe{
#'   \item{Category}{The Category for which an observation is made}
#'   \item{Observation}{The possible responses given for each category}
#'   \item{Score}{The score allocated against a response for each category}
#' }
#' @source Internal
#' @usage scoreCard
#' @keywords datasets
NULL

这会在调用 Roxygenise 时为数据集创建一个 .Rmd 文件,但是当我尝试使用 packageName::scoreCard 调用数据集时,它会显示 'scoreCard' is not an exported object from 'namespace:packageName'。任何人都可以发现我在上面的脚本中可能做错了什么或任何其他可能出错的想法,我有点茫然吗? (数据集正常保存在包的data文件夹中。)怕不能共享数据或者包抱歉。

【问题讨论】:

  • 数据集是如何存储的?作为.RData 文件? data("scoreCard", package = "packageName") 后跟 scoreCard 是否有效?我不认为这是与文档相关的问题
  • 您好,它存储为.rda。我会试试你的建议。
  • 这确实有效,但您不需要使用数据,据我了解,存储在包的数据文件中的数据集应安装在上述 R 脚本中记录时,以便您可以调用只需说出它的名称,例如 mtcars dataset
  • 我同意。顺便说一句,您为什么认为它与文档有关?当然,文档是必须的,但不管有没有它,事情都应该有效。
  • 它可能与文档无关,但我想不出为什么会出现上述错误。scoreCard' is not an exported object from 'namespace:packagename

标签: r namespaces packages


【解决方案1】:

是的,我没有意识到我的描述文件中需要 LazyData: true 。应该更仔细地阅读:http://r-pkgs.had.co.nz/data.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-05
    • 1970-01-01
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-11
    相关资源
    最近更新 更多