установка пакетов R на Ubuntu 8.10 - PullRequest
2 голосов
/ 11 февраля 2010

Предисловие: я пользователь OS X, пришедший в Linux, поэтому извините за мое невежество заранее

Я установил R с помощью synaptic и сейчас пытаюсь установить пакеты.

Я открываю R, затем пытаюсь

install.packages("some_package")

система пытается установить значение по умолчанию /site-library, затем сообщает, что она недоступна для записи, а затем запрашивает создание личной библиотеки?

Должен ли я просто сделать библиотеку сайта доступной для записи? Или есть что-то еще к этому?

Ответы [ 4 ]

3 голосов
/ 11 февраля 2010

Каталог /usr/share/local/lib/R является местоположением по умолчанию; каталог по умолчанию имеет владельца root:staff. Если вы добавите себя в группу staff (проще всего: отредактировав /etc/group и /etc/gshadow), вы можете написать туда, и вам не понадобятся полномочия sudo для установки пакетов. Это то, что я делаю.

Либо выполните apt-get install littler и скопируйте файл примера /usr/share/doc/littler/examples/install.r в /usr/local/bin и chmod 755 it. Вы можете просто сделать sudo install.r lattice ggplot2, чтобы взять два популярных примера.

Кстати, Ubuntu 8.1 не существует как версия. Может ты имел ввиду 8.10? Рассмотрите возможность обновления до 9.10 ...

Редактировать: Также взгляните на этот недавний вопрос SO .

1 голос
/ 28 июня 2013

Я столкнулся с той же проблемой. Самый удобный способ - запустить R как суперпользователь.

sudo R

После этого install.packages("some package") должно работать.

0 голосов
/ 11 февраля 2010

Хорошо, я предпочитаю устанавливать пакеты в локальную папку R ~/R/, но это просто вопрос индивидуальных предпочтений ... вы также можете предоставить себе разрешение на запись в библиотеку по умолчанию, это не имеет никакого значения.

Обязательно добавляйте актуальные пакеты. Эти пакеты, доступные в репозиториях по умолчанию, довольно старые. R v.2.9.0 доступна по умолчанию в 9.10, а v.2.10.1 теперь доступна. Так что будьте в курсе, добавьте эту строку в файл /etc/apt/sources.list (замените <text> на адрес сервера CRAN, вы можете найти адреса серверов в www.r-project.org> CRAN> Linux> Ubuntu):

deb http://<my.favorite.cran.mirror>/bin/linux/ubuntu karmic/

затем запустите эту строку в терминале:

gpg --keyserver subkeys.pgp.net --recv-key E2A11821 && gpg -a --export E2A11821 | sudo apt-key add -

и если ключи импортированы правильно, запустите:

sudo apt-get install r-base-core

или, если вы уже установили R, запустите:

sudo apt-get update && sudo apt-get upgrade

Вы должны также проверить наличие alias функций (попробуйте man alias в терминале) для автоматизации повторяющихся задач ... чувствуйте себя комфортно в терминале, Synaptic действительно хороший инструмент, но большинство пользователей Linux предпочитают подход командной строки для хорошая причина - это очень настраиваемый =)

Я рекомендую вам придерживаться одного сервера (советуем при выборе сервера по умолчанию - я предпочитаю сервер UCLA, Беркли работает просто отлично, Главный сервер обычно чертовски занят ... так что ...)

Кроме того, вы можете добавить сервер CRAN по умолчанию в функцию .First ():

# replace '<server address>'

.First() <- function() {
options("repos" = c(CRAN = "<my.favorite.cran.mirror>"))
}

теперь вы можете просто набрать:

> install.packages('<somepackage>')

и вы потеряете скучное окно списка серверов Tcl / Tk ! О, какое облегчение!

Добро пожаловать в Ubuntu!
Ура, приятель!

0 голосов
/ 11 февраля 2010

Если вы являетесь единственным пользователем, которому нужны эти пакеты, то самый простой и удобный способ - позволить R создать для вас личную библиотеку. Таким образом, вам не нужно связываться с системными каталогами, управляемыми системой управления пакетами.

Другой способ установки некоторых пакетов в Ubuntu - это поиск пакетов Ubuntu с именами, такими как r-cran-*. Таким образом, вам не нужно беспокоиться о зависимостях, пакеты становятся доступными для всех пользователей, а об обновлениях заботится система управления пакетами Ubuntu. Но только небольшая часть пакетов CRAN доступна таким образом, и вы можете не получить последнюю версию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...