Я ищу функцию, которая загружает файл zip / tar.gz пакета r (учитывая его имя) без его установки.

В основном install.packages(), но я хочу хранить zip-файлы в заданном каталоге.

Я не нашел способа самостоятельно создать URL-адрес с учетом имени пакета, но, похоже, он есть, поскольку install.packages() работает таким образом.

10
Tlatwork 4 Янв 2018 в 11:35

1 ответ

Лучший ответ

Использование download.packages:

download.packages(pkgs = "ggplot2", destdir = "/path/to/my/libs")

Или мы можем получить URL вручную, используя available.packages:

myPackage <- "ggplot2"
p <- available.packages()

myPackageUrl <- paste0(
  p[ rownames(p) == myPackage, "Repository"], "/",
  myPackage, "_",
  p[ rownames(p) == myPackage, "Version"], ".tar.gz")

myPackageUrl
# [1] "https://cran.rstudio.com/src/contrib/ggplot2_2.2.1.tar.gz"

# then download
download.file(url = myPackageUrl,
              destfile = paste0("/path/to/my/libs", "/",
              basename(myPackageUrl)))
11
zx8754 4 Янв 2018 в 09:12