Каков предпочтительный способ установки пакетов R в Ubuntu?

Я устанавливаю в R в Ubuntu, но я немного запутался со многими вариантами установки пакетов.

Традиционный способ - установить их внутри R, выполнив install.package(), Ubuntu, однако, предлагает возможность установки с apt-get, Это интересно, поскольку ОС будет обновлять пакеты. Поскольку у них есть только несколько доступных пакетов, это рано или поздно создаст проблемы. В конечном итоге мне придется устанавливать пакеты традиционным способом, устанавливая их по-разному, и, возможно, (?) Это также создаст проблемы с версиями.

Каков предпочтительный способ установки и хранения пакетов R в Ubuntu?

4 ответа

Я думаю, что единственными R-пакетами, доступными через репозитории Ubuntu, являются пакеты, поддерживаемые основной командой разработчиков R. Как и в большинстве пакетов, доступных через apt или синаптические не всегда самые новые версии. К счастью, у вас есть возможность добавить поддерживаемый CRAN программный источник, создав новый файл в /etc/apt/sources.list.d/CRAN.list который содержит одну строку текста:

deb http://cran.r-project.org/bin/linux/ubuntu trusty/

(заменить trusty/ с кодовым названием вашего дистрибутива; если вы не знаете это типа lsb_release -c в терминал). После этого (и apt update) ваш менеджер пакетов будет всегда устанавливать (или обновлять) поддерживаемые CRAN версии r-base, r-base-coreи т. д., поскольку они будут иметь более высокие номера версий, чем те, которые указаны в исходниках Debian. Смотрите здесь, если apt жалуется на неподписанный репо.

Для всех других пакетов (AKA "добавленные пакеты") я предпочитаю устанавливать в R через install.packages(c("name_of_package", "name_of_other_package")) по возможности, если только я точно не знаю, что версия на CRAN старая и что более новая версия обладает необходимыми мне функциями. В таких случаях вы можете установить с GitHub с devtools::install_github('AccountName/RepositoryName') или скачайте архив и установите его из окна терминала через R CMD INSTALL name_of_package.tar.gzили в R через install.packages("/path/to/downloaded/package.tar.gz", repos=NULL, type="source"),

Для полноты вот официальное руководство от CRAN.

Я обычно устанавливаю с помощью apt-get r-cran всякий раз, когда это возможно, поскольку это заботится о зависимостях и обновлениях более чистым способом. Только если он недоступен, я буду использовать установку из R.

Обратите внимание, что существует два репозитория для пакетов R Debian:

  1. Официальный R: предоставляет несколько пакетов. Чтобы включить его, вам нужно добавить ссылку на репо, обновляющую ваш файл source.list. Это задокументировано на странице CRAN-Ubuntu, затем запустите apt-get update, а затем обновить
  2. PPA: Майкл Раттер предоставляет ppa, cran2deb4ubuntu, который содержит еще много пакетов. Для некоторой документации, смотрите конец этого блога. Вам просто нужно запустить (потом после обновления / обновления):

     sudo add-apt-repository ppa:marutter/c2d4u
    

Обратите внимание, что для R 3.5.0 имя репо изменилось, а библиотеки Task Views, предварительно скомпилированные Майклом Раттером, теперь доступны из cran2deb4ubuntu_3.5.

ОБНОВЛЕНИЕ: cran2deb4ubuntu теперь поддерживается командой людей. Использовать sudo add-apt-repository ppa:c2d4u.team/c2d4u4.0+для установки дополнительных пакетов вне CRAN

Другие вопросы по тегам