在从r中的 roxygen2
包中运行 roxygenize()
命令时,我得到消息:
Error in get(fun, mode = "function", envir = parent.frame()) :
object '22' of mode 'function' was not found
任何如何调试此消息的想法都将不胜感激。我已经尝试以" 22"的方式将我的包裹打包,但没有任何相关的内容。Trackback也无助(通过roxygen2函数而不是我的软件包给回溯):
6: get(fun, mode = "function", envir = parent.frame())
5: formals(partitum$object$value)
4: roclet_rd_one(partitum, base_path)
3: roc_process.had(roc, parsed, base_path, options = options)
2: roc_process(roc, parsed, base_path, options = options)
1: roxygenize("myPackage")
任何建议都非常感谢 - 谢谢。
找到了问题 - 我在几个变量上有roxygen文档(非函数)。我删除了针对它有效的变量的文档(我只有两个)。
记录变量过去对我有用,但我认为自从更新为Roxygen 3.0.0以来,它可能会破裂。我将向维护者报告,看看他们对此做了什么。谢谢!
我也反对这个错误。问题在于,Roxygen不会期望您的数据文档在数据定义中出现。如果您提供了一个非零值,Roxygen将其视为要记录的函数。
而不是:
#' Data title
#'
#' More information
#'
#' @docType data
#' @format A data frame with some rows and some variables
my_data <- data.frame(x=rnorm(100),y=rexp(100))
您需要此:
#' Data title
#'
#' More information
#'
#' @docType data
#' @format A data frame with some rows and some variables
#' @name my_data
NULL
my_data <- data.frame(x=rnorm(100),y=rexp(100))