Я пытаюсь установить пакет R из частного репозитория на GitHub. Объекты пакета, такие как data и functions, загружаются должным образом, но мне не хватает vignettes, то есть .Rmd, который находится в {{X5 }} папку пакета.

library(devtools)
devtools::install_github("person_name/repo_name", build_vignettes = TRUE, auth_token =  "xxx")

Моя цель - иметь возможность загружать как functions, data, так и .Rmd из пакета с помощью install_github().

В идеале functions и data из пакета должны находиться в памяти RStudio (которая отлично работает), а файл .Rmd должен быть загружен локально в каталог, в котором я нахожусь, когда я скачать пакет.

Цель состоит в том, чтобы упростить пользователю повторный запуск анализа (.Rmd) с включенными data и functions.

Возможно ли это, или я неправильно понял функцию?

1
Will M 18 Мар 2021 в 00:52

1 ответ

Лучший ответ

Виньетки не хранятся в локальном рабочем каталоге. Они хранятся в самой упаковке. Обычно вы получаете к ним доступ, используя

vignette("topicname", package="packagename")

Если вы хотите получить путь к этому файлу RMD (при условии, что исходный файл является файлом уценки, что не относится ко всем пакетам), вы можете написать небольшой помощник

get_vignette_source_path <- function(...) {
   v <- vignette(...)
   file.path(v$Dir, v$File)
}

Например, с помощью "colwise" справки dplyr

get_vignette_source_path("colwise", package="dplyr")

Вы также можете скопировать файл в свой рабочий каталог.

file.copy(get_vignette_source_path("colwise", package="dplyr"), ".")

Вы можете включить в свой пакет функцию для этого, если хотите. вы также можете открыть окно редактирования самого исходного файла с помощью

edit(vignette("colwise", package="dplyr"))

А затем пользователь может сохранить это значение, где ему нравится.

2
MrFlick 17 Мар 2021 в 22:39