Где R хранит пакеты?

install.packages() функция в R является автоматической утилитой разархивации, которая добирается и пакеты установки в R.

  1. Как я узнаю, какой каталог R принял решение сохранить пакеты?

  2. Как я могу изменить каталог в который хранилища R и пакеты доступов?

191
задан mdml 29 May 2015 в 04:26
поделиться

3 ответа

Команда install.packages просматривает переменную .libPaths. Вот что у меня по умолчанию на OSX:

> .libPaths()
[1] "/Library/Frameworks/R.framework/Resources/library"

Я не устанавливаю туда пакеты по умолчанию, я предпочитаю, чтобы они были установлены в моем домашнем каталоге. В моем .Rprofile у меня есть такая строка:

.libPaths( "/Users/tex/lib/R" )

Это добавляет каталог «/ Users / tex / lib / R» в начало переменной .libPaths.

223
ответ дан 23 November 2019 в 05:34
поделиться

Это задокументировано в руководстве «Установка и администрирование R», которое прилагается к вашей установке.

На моем компьютере с Linux:

R> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"      
[3] "/usr/lib/R/library"           
R> 

означает, что путь по умолчанию - первый из них. Вы можете переопределить это с помощью аргумента для install.packages () (внутри R) или R CMD INSTALL (вне R).

Вы также можете переопределить, установив переменную R_LIBS_USER.

41
ответ дан 23 November 2019 в 05:34
поделиться

Спасибо за указание от двух вышеупомянутых ответчиков. Предложение Джеймса Томпсона лучше всего сработало для пользователей Windows.

  1. Перейдите туда, где установлена ​​ваша программа R. В литературе он упоминается как R_Home . Как только вы его найдете, перейдите в подкаталог / etc.

     C: \ R \ R-2.10.1 \ etc 
     
  2. Выберите в этой папке файл с именем Rprofile.site. Открываю с помощью VIM. Вы обнаружите, что это простой файл с менее чем 20 строками кода. Я вставил в код следующее:

     # путь к моей пользовательской библиотеке 
    . LibPaths ("C: / R / library") 
     

    (Комментарий добавлен для отслеживания того, что Я сделал это с файлом.)

  3. В R, набрав функцию .libPaths () , вы получите первую цель на C: / R / Library

ПРИМЕЧАНИЕ: вероятно, больше, чем один из способов добиться этого, но другие методы, которые я пробовал, по какой-то причине не работали.

9
ответ дан 23 November 2019 в 05:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: