Ошибка при установке пакета R
Пожалуйста, помогите мне, я не могу установить пакет "МАСС".
> library(MASS)
Error in library(MASS) : there is no package called ‘MASS’
Я попытался установить пакет MASS из локального:
> utils:::menuInstallLocal()
package ‘MASS’ successfully unpacked and MD5 sums checked
Warning: cannot remove prior installation of package ‘MASS’
Даже я не могу удалить "МАСС":
> remove.packages("MASS")
Removing package from ‘C:/Program Files/R/R-3.0.1/library’
(as ‘lib’ is unspecified)
Error in find.package(pkgs, lib) : there is no package called ‘MASS’
Также с этой опцией я не смог установить пакет:
> options(install.lock=T)
> utils:::menuInstallLocal()
package ‘MASS’ successfully unpacked and MD5 sums checked
Warning: cannot remove prior installation of package ‘MASS’
Warning: restored ‘MASS’
Warning message:
In file.copy(savedcopy, lib, recursive = TRUE) :
problem copying C:\Program Files\R\R-3.0.1\library\00LOCK\MASS\libs\x64\MASS.dll to C:\Program Files\R\R-3.0.1\library\MASS\libs\x64\MASS.dll: Permission
И с install.packages:
> install.packages("C:\\MASS_7.3-35.zip",repos=NULL)
package ‘MASS’ successfully unpacked and MD5 sums checked
Warning: cannot remove prior installation of package ‘MASS’
Warning: restored ‘MASS’
Warning message:
In file.copy(savedcopy, lib, recursive = TRUE) :
problem copying C:\Program Files\R\R-3.0.1\library\00LOCK\MASS\libs\x64\MASS.dll to C:\Program Files\R\R-3.0.1\library\MASS\libs\x64\MASS.dll: Permission
Я должен упомянуть, что я использую R с ORE (Oracle R Enterprise).
Ответы
Ответ 1
Здесь может быть несколько вещей. Начните сначала с определения местоположения вашей библиотеки:
Sys.getenv("R_LIBS_USER")
Мы уже знаем вашу информацию из предоставленной вами информации: C:\Program Files\R\R-3.0.1\library
Я считаю, что у вас есть файл, который называется: 00LOCK
. Из ?install.packages
:
Обратите внимание, что установка пакета может быть настолько неудачной, что каталог блокировки не удаляется: это запрещает любые дальнейшие установки в каталог библиотеки (или для -pkglock, пакета) до удаления каталога блокировки вручную.
Вам нужно удалить этот файл. Если у вас установлен пакет pacman
, вы могли бы просто использовать p_unlock()
, а файл 00LOCK
был удален. Вы не можете установить pacman
сейчас, пока не будет удален файл 00LOCK
.
Для установки pacman
используйте:
install.packages("pacman")
Возможно, вторая проблема. Здесь вы как-то испортились MASS
. Это может произойти, по моему опыту, при попытке обновить пакет, пока он используется в другом сеансе R. Я уверен, что есть и другие способы вызвать это. Чтобы решить эту проблему, попробуйте:
- Закройте все сеансы R (используйте диспетчер задач, чтобы убедиться, что вы действительно свободны от сеанса R) Ctrl + Alt + Delete
- Перейдите в папку вашей библиотеки
Sys.getenv("R_LIBS_USER")
. В вашем случае это: C:\Program Files\R\R-3.0.1\library
- Вручную удалить пакет
MASS
- Запустите ванильный сеанс R
- Установите
MASS
через install.packages("MASS")
Если это работает, сообщите мне, что сработало.
Ответ 2
У меня была та же проблема с пакетом e1071. Просто закройте любые другие сеансы R, выполняемые параллельно, и вам будет хорошо идти.
Ответ 3
После использования неправильных символов кавычки в install.packages()
, исправление меток кавычек привело к ошибке "не удалять предыдущую установку". Запустилось закрытие и перезапуск R.
Ответ 4
В моем случае мне пришлось закрыть сеанс R и переустановить все пакеты. На этом сеансе я работал с большими таблицами, я подозреваю, что это могло иметь эффект.