Установка пакета из локального файла .tar.gz в Linux

Я хотел бы установить пакет plyr из файла .tar.gz в мою библиотеку пакетов R на машине Linux. Как мне это сделать? Я просто помещаю его в каталог библиотеки? Что делать, если у меня нет прав на запись?

Ответы

Ответ 1

В командной строке:

R CMD INSTALL <package-name>.tar.gz

Или в R:

install.packages(<pathtopackage>, repos = NULL, type="source")

Ответ 2

В командной строке

R CMD INSTALL plyr_x.y.z.tar.gz

Если у вас нет разрешения на запись в стандартный каталог библиотеки и вы не можете использовать sudo для переопределения, вы можете установить его в другое место через

R CMD INSTALL -l <user_lib> plyr_x.y.z.tar.gz

где <user_lib> - это каталог, в который вы можете писать. Возможно, вам потребуется указать lib.loc при последующей загрузке пакета, если <user_lib> не находится в .libPaths (см. Ответ @DWin).

Подробнее см. http://cran.r-project.org/doc/manuals/R-admin.html; R CMD INSTALL --help также может быть полезным, хотя и кратким.

Ответ 3

Если у вас нет прав на установленную по умолчанию библиотеку, вы можете добавить к пути поиска, который использует R с помощью .libPaths, который "получает/устанавливает деревья библиотек, в которых пакеты ищутся".

.libPaths()  # will display all current libraries
?.libPaths

Второй аргумент install.packages (после имени вашего файла plyr.version.tar.gz) может быть каталогом библиотеки, управляемой пользователем.

?install.packages

Я был немного озадачен, сначала спросив об установке из CRAN, а затем спросил об установке файла tar.gz, из которого я создал впечатление, что вы уже загрузили этот файл и надеялись его установить.