Kurzversion: Kann ich die Dokumentation von Normal
in Paket emulieren stats
roxygen
mit?Mehrere Funktionen in einer .rd Datei
Lange Version: Ich arbeite an einem Paket und versuchte, die Dokumentation lesbarer zu machen, indem ich eine Reihe von Funktionen mit gemeinsamen Eingaben/Parametern unter einer Überschrift gesammelt habe, was eine generische Referenz auf die Gruppe sein wird. Jede Funktion sollte dem Endbenutzer unabhängig zur Verfügung stehen.
Ich nahm als Inspiration die Dokumentation für Normal
, die eine Anzahl von Methoden im Zusammenhang mit der Normalverteilung gibt, z.B. stats::dnorm()
.
Wenn ich suche ?dnorm
Ich finde den Namen der Hilfe Abschnitt ist Normal
, obwohl Normal
scheint keine exportierte Funktion oder Objekt zu sein.
Was ich habe versucht, nach dem in funs.R
setzt:
##' @rdname funs
##' @name funs
##' @aliases sum1
##' @aliases prod1
##' @title Two functions
##' @param x X
##' @param y Y
##' @return sum1 returns x+y
##' \cr
##' prod1 returns x*y
##' @examples
##' sum1(3,4)
##' prod1(3,4)
##' @export
sum1 <- function(x,y) x+y
##' @export
##' @rdname funs
prod1 <- function(x,y) x*y
ich dann roxygen2
auf dem oben laufen. Die Schwierigkeit besteht darin, dass beim Ausführen von R CMD check
für dieses minimale Paket das Paket nicht als undefined exports: funs
geladen werden kann. Wenn ich die Zeile ##' @name funs
entferne, übergibt das Paket R CMD check
, aber der Name des Hilfeabschnitts lautet sum1
statt funs
. Wenn ich die folgende unterhalb der Beispiele Abschnitt hinzufügen:
##' @export
funs <- function(x) x
Es geht, und ich kann die Hilfe sehen formatiert, wie ich möchte, aber ich bin eine bedeutungslose Funktion, um den Export, den Namen zu erhalten korrekt anzuzeigen.
Ich habe versucht, in den Quellhilfedateien für stats
zu sehen, wie es erreicht wurde, aber sie sind in .Rdx
Format, das ich nicht sicher bin, wie angezeigt wird.
Auch in Bezug auf eine verwandte Notiz, was ist das für eine Art istNormal
?
require(stats)
getAnywhere("Normal")
> no object named 'Normal' was found
Update:
@TylerRinker - ich fürchte, das das erste, was war ich versucht hatte. Damit werden die Funktionen in einem .Rd
Datei kombiniert, aber der Name der zugehörigen Hilfe ist der gleiche wie der Name der ersten Funktion, das ist, was ich versuche zu vermeiden:
##' sum
##' gives the sum
##' @param x X
##' @param y Y
##' @return sum1 returns x+y
##' @examples
##' sum1(3,4)
##' @rdname funs
##' @export
sum1 <- function(x,y) x+y
##' product
##' gives the product
##' @return prod1 returns x*y
##' @examples
##' prod1(3,4)
##' @rdname funs
##' @export
prod1 <- function(x,y) x*y
@Andrie - diese Lösung bewirkt genau das gleiche Schwierigkeit, der Name der Hilfe ist der gleiche wie die erste Funktion. dies ist
Vielleicht einfach nicht möglich ...
Ich kann falsch liegen, aber das ist, wie ich das handhabe: https://github.com/trinker/reports/blob/master/R/GQ.R –
Entfernen Sie '## '@name Spaß und es sollte funktionieren (Ich denke). – Andrie
Relevanter Beitrag von [Hadley] (http://r-pkgs.had.co.nz/man.html#dry2), Verwendung der Option '@ describeIn'. – zx8754