Подтвердить что ты не робот

Как не запускать пример с помощью roxygen2?

Я пишу функцию геокодирования прямо сейчас, полагаясь на наличие ключа Bing Maps. Очевидно, я бы предпочел не публиковать мои, и примеры не сработают без него.

Как включить пример для запуска пользователями вручную, но не выполнить его во время R CMD check?

4b9b3361

Ответ 1

Используйте \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 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

Ари, я также использую roxygen2 (версия 4.1.0). Следующее - конец моей разметки roxygen2 в определении моей функции (gctemplate) до начала реальной части.

#' @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.
В моей технике численным примером и текстом, объясняющим численный пример, являются оба комментария. Я использую отступы, чтобы сделать разницу между этими двумя; Обратите внимание, что после "#" есть 1 резкий и 2 резкости. Я всегда использую описанную выше технику # # ## # ######################################## # Пользователь остается на операцию копирования-вставки всякий раз, когда он/она хочет проверить функцию. Этот метод, по моему мнению, более параллелен классической компрометации философии программирования.

Ответ 4

Вы можете использовать \donttest{} к вашему примеру. Этот фрагмент будет предоставлен в вашей документации, но не будет проверен с помощью проверки R CMD.

Для получения дополнительной информации → ?example

#' @example
\donttest{
    2^2
    }

Этот 2 ^ 2 не будет запущен при запуске devtools::check()

Проверяйте это самостоятельно, прежде чем судить.:)