roxygen2を使用してサンプルを実行しない方法は?


回答:


147

使用する \dontrun{}

#'@examples
#'\dontrun{
#'geocode("3817 Spruce St, Philadelphia, PA 19104")
#'geocode("Philadelphia, PA")
#'dat <- data.frame(value=runif(3),address=c("3817 Spruce St, Philadelphia, PA 19104","Philadelphia, PA","Neverneverland"))
#'geocode(dat)
#'}

2
これは、に記載されて?exampleおよびライティングR拡張
GSee

2
@Jeroen、タグをroxygen2構成した@exampleと思うので、roxygen2問題だと思います。私\example{}は有効だとは思いません-cran.r-project.org/doc/manuals/…を
GSee

2
トピックのタイトルから判断すると、問題は.Rd構文ではなく、roxygen2構文に関するものですか?
Jeroen 2013

答えてくれてありがとう。の@example代わりにを使用していたため、最初はうまくいきませんでした@examples。どちらのタグもRStudioオートコンプリートで表示されます。私は今幸せです。
Paul Rougieux、2015

5
求められていることに対する正しい答えは、donttestではなくdontrunだと思います。?exampleとstackoverflow.com/questions/12038160/…を参照してください。cran.r-project.org/web/packages/roxygen2/vignettes/rd.htmlも参照してください。
ジュリアンカール

33

あなたの\donttest{}例に使用できます。スニペットはドキュメントで提供されますが、R CMDチェックでテストされません。

詳細については-> ?example

#' @example
\donttest{
    2^2
    }

この2 ^ 2は実行すると実行されません devtools::check()

審査する前に自分で確認してください。:)


13
これはdontrunの代わりに受け入れられる答えであるようです。?exampleから、「donttestは、通常は実行する必要があるが、パッケージチェック中は実行しないコードを囲みます。一方、「dontrunは実行してはならないコードを囲みます。」また、クランのメンテナから、dontrunからdonttestに切り替えるコメントが寄せられました。
ジュリアンカール

3
@JulianKarlsに完全に同意します。CRANメンテナーから同じフィードバックを得ました。
デビッド

9

使用している人のため@example path/to/example.Rの代わりに@examplesタグを使用でき\dontrun直接環境をexample.Rファイル。例えば

# example.R
\dontrun{
# this is a long running example
for(i in seq(1, 1e5)) { lm(mpg ~ wt, data = mtcars) }
}

# some other shorter example
2 + 2

1
これは私には機能しません(Win
10、64

2

アリ、私はroxygen2(バージョン4.1.0)も使用しています。以下は、関数(gctemplate)定義でのroxygen2マークアップの、実際の部分の始まりまでの終わりです。

#' @examples
#' ## List all G-causalities in a VAR system of 5 variables that will be searched in the pattern of 1 
#' ## causer (like-independent) variable and 2 like-dependents conditional on 5-(1+2)=2 of the remaining 
#' ## variable(s) in the system. Variables are assigned to numbers 1 to nvars. 
#' ## "1 2 5 3 4" in the resulting line of gctemplate is to indicate the 
#' ## (conditonal, partial, etc.) G-causality from variable 1 to variables 2 and 5 
#' ## conditonal on variables 3 and 4.
#' # gctemplate(5,1,2)
#' ## The number of all G-causalities to be searched in the above pattern.
#' #dim(gctemplate(5,1,2))[[1]]
#' @importFrom combinat combn
#' @export
gctemplate <- function(nvars, ncausers, ndependents){
...

GSeeのdontrunメソッドを知っています。
私の手法では、数値例と数値例を説明するテキストはどちらもコメントです。私はインデントを使用して、これら2つを区別しています。「#」の後にそれぞれ1つのシャープと2つのシャープがあることに注意してください。私は常に上記の "# '## /#'#"テクニックをパッケージで使用しています。ユーザーは、機能をテストしたいときはいつでも、コピー/貼り付け操作を行うことができます。私によると、この手法は、ソフトウェアコーディングの哲学に対する古典的なコメントの衝突とより平行しています。


14
を使用するdontrun{}と、ユーザーはを呼び出すことができexample(myFunction, run.dontrun=TRUE)ますが、例を単にコメント化すると、コピー/貼り付け以外に例を実行する方法がありません。
GSee、2015
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.