2013-05-21 7 views
14

По какой-то причине я вдруг не смог установить пакеты в R (впоследствии я обновил до последней версии R и запускаю Windows 7). Например, если я типа:Установка пакетов на R

install.packages('beeswarm') 

Установка пакета в 'D:/Rlibs' (как 'Lib' не определено) --- Пожалуйста, выберите CRAN зеркало для использования в этой сессии --- пытаясь URL 'http://www.stats.bris.ac.uk/R/bin/windows/contrib/3.0/beeswarm_0.1.5.zip' Тип содержимого 'текст/html' длина неизвестна открыл URL скачано 1859 байт

Ошибка в read.dcf (file.path (имя PKGNAME, "Описание"), с ("пакет", " Type ")): не удается открыть соединение. Кроме того: Предупреждение сообщений: 1: В unzip (zipname, exdir = dest) : ошибка 1 при извлечении из zip-файла 2: В read.dcf (file.path (pkgname, "DESCRIPTION"), c ("Пакет", "Тип")): невозможно открыть сжатый файл 'beeswarm/DESCRIPTION' , вероятная причина «Нет такого файла или каталога»

Я читал, что в Windows 7 могут существовать важные ограничения прав на запись в определенные папки и т. д., поэтому я пошел на некоторые длины для установки R и библиотеки папки в нестандартных областях моего компьютера и разрешить мне права на определенные папки, но безрезультатно. Возможно, также важно, когда я типа:

.libPaths() 

# [1] "D:/Rlibs"            
# [2] "C:/Users/L.Halsey/Documents/R/win-library/3.0"   
# [3] "C:/Users/L.Halsey/Documents/Documents/R-3.0.1/library" 

Я создал несколько папок в попытке создать одно, что я мог бы успешно установить библиотеки в и установить их, чтобы быть признанными R с помощью «переменные среды» от кнопка Пуск. Я не знаю, как удалить любой из них, хотя - не уверен, что это относится к моей общей проблеме, когда не удается установить или обновить пакеты по какой-либо причине.

ответ

10

Сообщаемая ошибка неспособна открыть соединение. В Windows это often a firewall problem and is in the Windows R FAQ. Обычная первая попытка - запустить internet2.dll. Из консольного сеанса вы можете использовать:

setInternet2(TRUE) 

(Вы правы, думая, что это не из-за вашу установку библиотеки Ошибка ничего не говорит о разрешениях.). Я не думаю, просто набрав .libPaths должен вернуть этот символ вектор, так как на моей машине мне нужно было бы ввести .libPaths(), чтобы увидеть что-то подобное. Если вы хотите уменьшить количество мест для библиотек, вы можете использовать функцию .libPaths для установки значений. Это было бы выбрать второй и третий из существующих путей

.libPaths(.libPaths()[2:3]) 

Внутренний вызов получает вектор пути и устанавливает внешний вызов его к уменьшению вектора.

2

Я, вероятно, дублировать много других ответов на StackOverflow, но я получил точно такую ​​же ошибку, как ОП, а именно: Warning messages: 1: In unzip(zipname, exdir = dest) : error 1 in extracting from zip file 2: In read.dcf(file.path(pkgname, "DESCRIPTION"), c("Package", "Type")) : cannot open compressed file 'zoo/DESCRIPTION', probable reason 'No such file or directory'

Оказалось, в то время как я, как пользователь имел разрешения на запись в определенное каталог, R не сделал. Для того, чтобы быть уверенным, вы не имеете что-то подобное, сделайте следующее:

  1. получить USB-накопитель, давайте назовем его E
  2. источник загрузки пакет как.зип-файл и сохранить его на USB-диск в каком-нибудь каталоге, давайте назовем его E:/источник
  3. Создать каталог для библиотек на USB-накопителе, давайте назовем его E:/ЛИЭС
  4. Установить пакеты, требующий команду R install.package из R консоль и установки всех соответствующих каталогов, чтобы указать на USB-накопитель:

    (здесь я использую пакет зоопарк в качестве примера)

    install.packages("E:/source/zoo_1.7-12.zip", 
           destdir = 'E:/source', # no "/" after the path 
           lib = 'E:/libs', 
           repos = NULL) 
    
  5. Загрузите пакет из каталога, в котором вы установили его: library('zoo', lib.loc = 'E:/libs')


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

обновление: В некоторых окнах среды даже ваш USB-палки могут быть защищены от чтения и записи с помощью R. Убедитесь, что вы проверьте права доступа с помощью аппарата вы работаете с.

1

Следующие работал для меня (на основании вышеупомянутого ответа)

install.packages ("clustvarsel", Lib = "C:/Users/dnentchev/Мои программы/R-3.2.2/библиотеки")

0

Запуск RStudio как администратор исправил его для меня!