【问题标题】:Error: bad 'S3method' directive: S3method("")错误:错误的“S3method”指令:S3method("")
【发布时间】:2016-07-31 16:04:36
【问题描述】:

当我尝试使用 devtools 包 document()build() 我的 R 包时,我收到错误消息:

Error: bad 'S3method' directive: S3method("")

发生此错误时,我正在处理函数tabyl(),现在我无法摆脱它,即使对函数头进行了很多调整。该功能现在应该可以工作了;供参考,标题是:

#' @export
tabyl <- function(...) UseMethod("tabyl")

#' @inheritParams tabyl
#' @describeIn tabyl Create a frequency table from a vector, returned as a data.frame, showing percentages and with or without including \code{NA} values.  A fully-featured alternative to \code{table()}.
#' @export
tabyl.default <- function(vec, sort = FALSE, show_na = TRUE, ...) {
  ...
}

#' @inheritParams tabyl.default
#' @param .data a data.frame.
#' @param ... arguments passed to tabyl.default.
#' @describeIn tabyl Create a frequency table from a variable in a data.frame, returned as a data.frame, showing percentages and with or without including \code{NA} values.  A fully-featured alternative to \code{table()}.
#' @export
tabyl.data.frame <- function(.data, ...){
...
}

【问题讨论】:

    标签: r devtools


    【解决方案1】:

    在某一时刻,您使用了 document() 与放置该行的有问题的值:

    S3method("")
    

    在您的 NAMESPACE 文件的顶部。这将导致 document() 在新的 NAMESPACE 文件中覆盖该行之前失败。

    手动从 NAMESPACE 文件中删除该行,然后您可以继续处理包,像正常一样运行 document()

    【讨论】:

    • 或者直接删除NAMESPACE文件,让roxygen2重新创建。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多