短いバージョン:を使用Normal
してパッケージ内のドキュメントをエミュレートできますか?stats
roxygen
ロングバージョン:私はパッケージに取り組んでおり、グループへの一般的な参照となる1つの見出しの下に収集された共通の入力/パラメーターを持つ多くの関数を持つことにより、ドキュメントを読みやすくしようとしていました. 各機能は、エンド ユーザーが個別に利用できる必要があります。
Normal
私はインスピレーションとして、正規分布に関連する多くの方法を提供するドキュメントを参考にしましたstats::dnorm()
。
検索すると、エクスポートされた関数またはオブジェクトではないように見えます?dnorm
が、ヘルプ セクションの名前がわかりました。Normal
Normal
私が試したのは、次のものをに入れることfuns.R
です:
##' @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
次に、上記で実行roxygen2
します。問題は、R CMD check
この最小パッケージで実行すると、パッケージを としてロードできないことが判明することundefined exports: funs
です。行を削除すると##' @name funs
、パッケージは通過しますがR CMD check
、ヘルプ セクションの名前sum1
はfuns
. 例のセクションの下に次を追加すると:
##' @export
funs <- function(x) x
それは成功し、希望どおりにフォーマットされたヘルプが表示されますが、名前を正しく表示するために意味のない関数をエクスポートしています。
のソースヘルプファイルを調べてみましたstats
が、.Rdx
表示方法がわからない形式になっています。
また、関連して、 とはどのようなものです Normal
か?
require(stats)
getAnywhere("Normal")
> no object named 'Normal' was found
アップデート:
@TylerRinker - これは私が最初に試したものではないかと思います。これにより、関数が1つの.Rd
ファイルに結合されますが、関連するヘルプの名前は最初の関数の名前と同じです。これは私が避けようとしていたものです:
##' 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 - この解決策はまったく同じ問題を引き起こします。ヘルプの名前は最初の関数と同じです。
もしかしたらこれしか出来ない…