Каков предпочтительный способ установки пакетов 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:
- Официальный R: предоставляет несколько пакетов. Чтобы включить его, вам нужно добавить ссылку на репо, обновляющую ваш файл source.list. Это задокументировано на странице CRAN-Ubuntu, затем запустите
apt-get update
, а затем обновить 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