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

Вызов библиотеки() в R с переменной в качестве аргумента

Я хотел бы что-то добиться от

libs = c("AER", "gbm", "caret", "MASS", "nnet", "randomForest")
for (i in libs) {
  if(!is.element(i, .packages()) {
    install.packages(i)
  }
  library(i)
}

Вызов библиотеки (i) не заменяет я значением, которое хранится в переменной i. Вместо этого он пытается загрузить библиотеку с именем "i"

Есть ли способ заставить я обрабатываться как переменную и разрешен перед вызовом библиотеки?

4b9b3361

Ответ 1

Как насчет library(...,character.only = TRUE)?

Ответ 2

Вот полный код (объединение ответа joran и добавление "all.available = TRUE" ).

libs = c("AER", "gbm", "caret", "MASS", "nnet", "randomForest")
for (i in libs){
  if( !is.element(i, .packages(all.available = TRUE)) ) {
    install.packages(i)
  }
  library(i,character.only = TRUE)
}