我现在正在编写一个geocoding function依赖于拥有Bing地图密钥。显然,我宁愿不发布我的,如果没有一个,这些例子就会失败。
如何为用户提供手动运行示例,但未在R CMD check
期间执行?
答案 0 :(得分:117)
使用\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)
#'}
答案 1 :(得分:12)
您可以在示例中使用\donttest{}
。该片段将在您的文档中提供,但未通过R CMD检查进行测试。
了解更多信息 - &gt; ?example
#' @example
\donttest{
2^2
}
当你运行devtools::check()
在评判之前,请自行检查。 :)
答案 2 :(得分:3)
对于使用@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
答案 3 :(得分:0)
Ari,我也使用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的回归方法 在我的技术中,数值示例和解释数字示例的文本都是注释。我用缩进来区分这两者;请注意,“#”后分别有1个锐利和2个锐利。我总是在我的包中使用上面的“#”## /#'#“技术。每当他/她想测试该功能时,用户就可以进行复制粘贴操作。根据我的说法,这种技术与软件编码哲学的经典评论轰炸更加平行。
答案 4 :(得分:0)
Activity
是正确的函数。看这里:
<块引用>出于说明的目的,包含导致错误的代码通常很有用。 \dontrun{} 允许您在示例中包含未运行的代码。 (您曾经可以将 \donttest{} 用于类似目的,但不再推荐使用,因为它实际上已经过测试。)