2016-07-31 13 views
0

Wenn ich versuche, zu document() oder build() mein R-Paket des devtools Paket verwenden, erhalte ich die Fehlermeldung:Fehler: schlechte "S3method Richtlinie: S3method („“)

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

ich auf einer Funktion arbeite tabyl() wenn dieser Fehler auftrat und ich ihn jetzt nicht loswerden kann, selbst wenn ich meine Funktionskopfzeilen stark überarbeitet habe. Die Funktion sollte jetzt funktionieren; Referenz sind die Header:

#' @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, ...){ 
... 
} 

Antwort

0

An einem Punkt, den Sie document() mit problematischen Werte verwendet, die die Linie gelegt:

S3method("") 

An der Spitze des Namespace-Datei. Dies führt dazu, dass document() fehlschlägt, bevor diese Zeile in der neuen NAMESPACE-Datei überschrieben werden kann.

Löschen Sie diese Zeile manuell aus der NAMESPACE-Datei, dann können Sie mit der Arbeit am Paket fortfahren, indem Sie wie gewohnt document() ausführen.

+0

Oder löschen Sie einfach die NAMESPACE-Datei und lassen Sie roxygen2 es neu erstellen. – Roland