Установка сыщика с помощью Bioconductor, ошибка, где путь не доступен для записи? - PullRequest
0 голосов
/ 19 апреля 2020

У меня проблемы с установкой Sleuth в R studio. Я уже пытался устранить неполадки, используя предложенные методы в потоке запаса под названием «Путь установки не доступен для записи R, невозможно обновить пакеты» (ссылка: Путь установки не доступен для записи R, невозможно обновить пакеты ). Я продолжаю получать следующую ошибку.

Сообщение об ошибке:

Bioconductor version 3.10 (BiocManager 1.30.10), R 3.6.1 (2019-07-05)
Installation path not writeable, unable to update packages: boot, class, foreign, KernSmooth, lattice,
  MASS, Matrix, mgcv, nlme, nnet
Old packages: 'isoband', 'purrr', 'RcppArmadillo', 'RCurl', 'reshape2', 'survival'
Update all/some/none? [a/s/n]: 
BiocManager::install("devtools")    # only if devtools not yet installed
Update all/some/none? [a/s/n]: 
BiocManager::install("pachterlab/sleuth")
Update all/some/none? [a/s/n]:

Когда я набираю этот код:

if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install()
BiocManager::install("devtools")    # only if devtools not yet installed
BiocManager::install("pachterlab/sleuth")

Спасибо за помощь!

1 Ответ

0 голосов
/ 07 мая 2020

Этот ответ может быть полезен.

Похоже, что пакеты-нарушители (boot, class, foreign, et c.) Установлены в место, где у вас нет прав на запись для.

В принципе, пакет sleuth должен быть установлен, несмотря на сообщения об ошибках (это можно проверить, запустив library(sleuth) в консоли R). Однако, чтобы эти ошибки не возникали при каждой установке пакета (BioConductor), я бы рекомендовал переустановить эти пакеты в каталог, к которому у вас есть доступ для записи. В зависимости от вашей ОС это может быть в разных местах.

Я нашел это руководство особенно полезно для поддержки пакетов R.

Короче говоря (все команды выполняются в R):

  1. Удалить пакеты, упомянутые в сообщении об ошибке с remove.packages(), если sleuth был установлен, удалите его, мы установим его позже более удобным способом
  2. В R, проверьте вывод Sys.getenv("R_LIBS_USER") обычно это путь к каталогу в вашем домашнем каталоге
  3. Вероятно, что каталог R_LIBS_USER еще не существует, создайте его с помощью dir.create(Sys.getenv("R_LIBS_USER"))
  4. Перезапустите R (в RStudio вы можете сделать Session Перезапустить R
  5. Проверить вывод .libPaths(), первый элемент теперь должен быть каталогом, который вы только что создали (т. е. аналогично Sys.getenv("R_LIBS_USER")), теперь это каталог по умолчанию, куда будут устанавливаться R-пакеты
  6. Установите sleuth снова с BiocManager::install("pachterlab/sleuth"), обычно это также должно устанавливать все зависимости. Если нет, возможно, вам придется установить их отдельно.

Надеюсь, это поможет!

...