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

20

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

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

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

user565663
источник
2
Добро пожаловать в Спросите Ubuntu. Какой хороший первый вопрос! +1.
Grooveplex

Ответы:

7

Я думаю, что единственными R-пакетами, доступными через репозитории Ubuntu, являются пакеты, поддерживаемые основной командой разработчиков R. Как и в большинстве пакетов, те, которые доступны через aptили synaptic, не всегда являются новейшими версиями. К счастью, у вас есть возможность добавить программный источник, поддерживаемый 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 .

drammock
источник
3

Я бы обычно устанавливал используя 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
    
Matifou
источник
1

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

user837998
источник
Это почти наверняка правильный ответ для большинства пользователей в наши дни. Не забывайте, что вы также можете добавить сборки Майкла "rrutter3.5" для CRAN (базовая версия и несколько дополнений). Некоторые примеры здесь: twitter.com/grant_mcdermott/status/1174059099878641664
Грант