Как выйти из R-скрипта, если один R-пакет не был успешно установлен? - PullRequest
1 голос
/ 14 марта 2019
#!/usr/bin/Rscript
install.packages("Deriv")
install.packages("vegan")
packageurl <- "https://cran.r-project.org/src/contrib/Archive/mirt/mirt_1.27.1.tar.gz"
install.packages(packageurl, repos=NULL, type="source")

Вышеуказанный скрипт используется для установки пакетов.

Как заставить этот скрипт перестать работать (или выйти), если какой-либо пакет не был успешно установлен (предупреждения не имеют значения)?

Ответы [ 2 ]

2 голосов
/ 14 марта 2019

Я бы проверял установленные пакеты после каждой установки и использовал stop, чтобы остановить скрипт значимым сообщением.Например,

install.packages("Deriv")

if (!"Deriv" %in% installed.packages()[, "Package"]) {
  stop("Package Deriv not installed successfully.")
}
0 голосов
/ 14 марта 2019

Это то, что вы ищете?

if (
  !all(
    c('Deriv', 'vegan', 'mirt') %in% installed.packages()
  )
) q()
...