Как я должен иметь дело с предупреждением" пакет 'xxx' недоступен (для версии R x.y.z)"?
Я попытался установить пакет, используя
install.packages("foobarbaz")
но получил предупреждение
Warning message:
package 'foobarbaz' is not available (for R version x.y.z)
почему R не думает, что пакет доступен?
см. Также эти вопросы, относящиеся к конкретным случаям этой проблемы:
мой пакет не работает для R 2.15.2
пакет 'Rbbg' недоступен (для версии R 2.15.2)
пакет недоступен (для версии R 2.15.2)
пакет doMC недоступен для R версии 3.0.0 предупреждение в установке.пакеты
зависимость 'Rglpk' недоступна для пакета 'fPortfolio'
что делать, когда пакет не доступен для нашей версии R?
пакет bigvis для R недоступен для версии 3.0.1 R?
пакет 'syncwave' / ' mvcwt 'недоступен (для версии R 3.0.2)
пакет "бриллианты" недоступен (для версии R 3.0.0)
пакет plyr для R недоступен для версии R 3.0.2?
https://stackoverflow.com/questions/21580661/installing-predictabel-package-on-r-2-15-2
пакет bigmemory не устанавливается на R 64 3.0.2
пакет "makeR" недоступен (для версии 3.0.2)
пакет ' RTN ' недоступен (для версии R 3.0.1)
проблема установки пакета geoR
пакет 'twitterR' недоступен (для R версии 3.1.0)
Как установить Rcpp, пакет? Я получил "пакет недоступен"пакета не доступно (для версии R 3.1.1)
"пакет' rhipe ' недоступен (для версии 3.1.2 R)"
https://stackoverflow.com/questions/31439092/package-dplyr-is-not-available-for-r-version-3-1-1
15 ответов:
1. Вы не можете написать
первое, что нужно проверить-это вы правильно написали название пакета? имена пакетов чувствительны к регистру в р.
2. Вы не посмотрели в правильном репозитории
Далее, вы должны проверить, если пакет доступен. Типа
setRepositories()см. также ?setRepositories.
чтобы увидеть, какие репозитории R будет искать в для вашего пакета, и при необходимости выбрать некоторые дополнительные из них. По крайней мере, вы обычно хотите
CRANбыть выбранным, иCRAN (extras)если вы используете Windows, аBioc*репозитории, если вы сделаете какие-либо[gen/prote/metabol/transcript]omicsбиологические анализы.чтобы навсегда изменить это, добавьте строку типа
setRepositories(ind = c(1:6, 8))наRprofile.site.
3. Пакет не находится в репозиториях вы выбрано
верните все доступные пакеты с помощью
ap <- available.packages()см. также имена доступных пакетов R,?доступный.пакеты.
поскольку это большая матрица, вы можете использовать средство просмотра данных для ее изучения. Кроме того, вы можете быстро проверить, доступен ли пакет, Протестировав имена строк.
View(ap) "foobarbaz" %in% rownames(ap)кроме того, можно просмотреть список доступных пакетов в браузере для CRAN,CRAN (дополнительно),программе bioconductor,R-forge,RForge и github.
еще одно возможное предупреждение, которое вы можете получить при взаимодействии с зеркалами CRAN:
Warning: unable to access index for repositoryчто может означать, что выбранный репозиторий CRAN в настоящее время недоступен. Вы можете выбрать другое зеркало с
chooseCRANmirror()и попробуйте установки снова.
существует несколько причин, по которым пакет может быть недоступен.
4. Вы не хотите пакет
возможно, вы действительно не хотите пакет. Это часто путают о разнице между пакет и библиотека, или пакет и набор данных.
пакет представляет собой стандартизированный набор материалов, расширяющих R, например, предоставляя код, данные или документация. Библиотека-это место (каталог), где R знает, чтобы найти пакеты, которые он может использовать
чтобы просмотреть доступные наборы данных, введите
data()
5. R или программе bioconductor устарел
он может иметь зависимость от более поздней версии R (или одного из пакетов, которые он импортирует/зависит от этого). Посмотри на
ap["foobarbaz", "Depends"]и рассмотрите возможность обновления вашей установки R до текущей версии. в Windows, это легче всего сделать через
installrпакета.library(installr) updateR()(конечно, вам может понадобиться
install.packages("installr")первый.)аналогично для пакетов Bioconductor может потребоваться обновить установку Bioconductor.
source("http://bioconductor.org/biocLite.R") biocLite("BiocUpgrade")
6. Пакет устарел
может быть в архиве (если он больше не поддерживается и больше не передает
R CMD checkтесты.)в этом случае, вы можете загрузить старую версию пакета, используя
install_version()library(remotes) install_version("foobarbaz", "0.1.2")альтернативой является установка из зеркала GitHub CRAN.
library(remotes) install_github("cran/foobarbaz")
7. Там нет Windows/OS X / Linux binary
он может не иметь Windows binary из-за необходимости дополнительного программного обеспечения, которое CRAN не имеет. Кроме того, некоторые пакеты доступны только через источники для некоторых или всех платформ. В этом случае может быть версия в
CRAN (extras)хранилище (см.setRepositoriesвыше).если пакет требует компиляции кода (например, C, C++, FORTRAN) , то на Windows install Rtools или на OS X установите инструменты разработчика сопроводительный XCode, и установить исходную версию пакета через:
install.packages("foobarbaz", type = "source") # Or equivalently, for Bioconductor packages: source("http://bioconductor.org/biocLite.R") biocLite("foobarbaz", type = "source")на CRAN, вы можете сказать, если вам понадобятся специальные инструменты для создания пакета из источник глядя на
NeedsCompilationфлаг в описании.
8. Пакет находится на github / Bitbucket / Gitorious
он может иметь репозиторий на Github/Bitbucket / Gitorious. Эти пакеты требуют
remotesпакет для установки.library(remotes) install_github("packageauthor/foobarbaz") install_bitbucket("packageauthor/foobarbaz") install_gitorious("packageauthor/foobarbaz")(как и
installr, вам может понадобитьсяinstall.packages("remotes")первый.)
9. Там нет исходной версии пакет
хотя двоичная версия вашего пакета доступна, исходная версия отсутствует. Вы можете отключить эту проверку, установив
options(install.packages.check.source = "no")как описано в это так ответ imanuelc и раздел Данные
?install.packages.
10. Пакет находится в нестандартном репозитории
ваш пакет находится в нестандартном репозитории (например
Rbbg). Предполагая, что он достаточно соответствует стандартам CRAN, вы все равно можете загрузить его с помощьюinstall.packages; вам просто нужно указать URL репозитория.install.packages("Rbbg", repos = "http://r.findata.org")
RHIPEс другой стороны, он не находится в CRAN-подобном хранилище и имеет свой собственный инструкция по установке.
в последнем R (3.2.3) есть ошибка, мешающая ему несколько раз найти правильный пакет. Обходной путь - установить репозиторий вручную:
install.packages("lubridate", dependencies=TRUE, repos='http://cran.rstudio.com/')нашел решение в другой вопрос
там, кажется, проблема с некоторыми версиями
Rиlibcurl. У меня была такая же проблема наMac (R version 3.2.2)иUbuntu (R version 3.0.2)и в обоих случаях это было решено просто запустив это передinstall.packagesкомандаoptions(download.file.method = "wget")решение было предложено другом, однако я не смог найти его ни на одном из форумов, поэтому отправил этот ответ для других.
11. R (или другая зависимость) устарела, и вы не хотите ее обновлять.
предупреждение это не лучшая практика.
- загрузите исходный код пакета.
- перейти к .
удалить ошибочную строку с помощью текстового редактора, например,
Depends: R (>= 3.1.1)установить из локального (т. е. из родительского каталога
DESCRIPTION) напримерinstall.packages("foo", type="source", repos=NULL)
одна вещь, которая произошла для меня, заключается в том, что версия R, предоставленная моим дистрибутивом linux (версия R 3.0.2, предоставленная Ubuntu 14.04), была слишком старой для последней версии пакета, доступного на CRAN (в моем случае,
plyrверсия 1.8.3 на сегодняшний день). Решение состояло в том, чтобы использовать систему упаковки моего дистрибутива вместо того, чтобы пытаться установить из R (apt-get install r-cran-plyrУ меня версия 1.8.1 изplyr). Возможно, я мог бы попытаться обновить R с помощьюupdateR(), но я боюсь, что это будет вмешивайтесь в менеджер пакетов моего дистрибутива.
это сэкономило мне много времени на отладку того, что не так. Во многих случаях зеркала просто устарели. Эта функция может установить несколько пакетов с их зависимостями с помощью
https://cran.rstudio.com/:packages <- function(pkg){ new.pkg <- pkg[!(pkg %in% installed.packages()[, "Package"])] if (length(new.pkg)) install.packages(new.pkg, dependencies = TRUE, repos='https://cran.rstudio.com/') sapply(pkg, require, character.only = TRUE) } packages(c("foo", "bar", "baz"))
Это то, что я, наконец, мог сделать для установки пакета psych в R-3.4.1, когда я получил такое же предупреждение
1:погуглил для этого пакета.
2: скачал его вручную, имея tar.расширение gz
3: выберите опцию " архивный файл пакета (.промелькнуть.;смола.gz) " для установки пакетов в R
4: просматривал локально до места, где он был загружен и нажал установить
вы можете получить предупреждение: зависимости ' xyz ' недоступны для пакет, затем сначала установите их из репозитория, а затем выполните шаги 3-4 .
я исправил эту ошибку на Ubuntu, тщательно следуя инструкции по установке R. Это включало:
- добавлять
deb http://cran.utstat.utoronto.ca/bin/linux/ubuntu trusty/к моим/etc/apt / источникам.список файлов- под управлением
sudo apt-get update- под управлением
sudo apt-get install r-base-devдля шага 1 Вы можете выбрать любое зеркало загрузки CRAN вместо моего университета Торонто, если хотите.
у меня была такая же проблема (на Linux), которая может быть решена изменением настроек прокси. Если вы находитесь за прокси-сервером, проверьте настройки с помощью
Sys.getenv("http_proxy")в р. В моем~/.Renvironу меня были следующие строки (от https://support.rstudio.com/hc/en-us/articles/200488488-Configuring-R-to-Use-an-HTTP-or-HTTPS-Proxy) вызывая проблему:http_proxy=https://proxy.dom.com:port http_proxy_user=user:passwdизменение его
http_proxy="http://user:[email protected]:port"решена проблема. Вы можете сделать то же самое для
https.это была не первая мысль, когда я прочитал "пакет xxx недоступен для версии r-x-y-z" ...
HTH
Я сделал ошибку, забыв поставить
repos=NULLпри установке пакета R из исходного кода. В этом случае сообщение об ошибке немного вводит в заблуждение:package 'foobarbaz' is not available (for R version x.y.z)проблема была не в версии R, а в
это почти всегда работает для меня, когда я использую биокондуктор в качестве источника, а затем вызываю biocLite. Пример:
source("https://bioconductor.org/biocLite.R") biocLite("preprocessCore")
Как уже упоминалось здесь (на французском языке), это может произойти, когда у вас есть две версии R, установленных на вашем компьютере. Удалить старый, затем повторите попытку установки пакета! Это сработало отлично для меня.
Это решение может сломать R, но вот самое простое решение, которое работает 99% времени.
вам нужно сделать, это просто:
install.packages('package-name',repos='http://cran.us.r-project.org')
Как уже упоминалось автором над здесь
еще одно незначительное дополнение, при попытке проверить старую версию R с помощью docker image
rocker/r-ver:3.1.0
- по умолчанию
reposпараметрMRANи это не удается получить много пакетов.- эта версия R не имеет
https, Так, например:install.packages("knitr", repos = "https://cran.rstudio.com")кажется, работает.
я столкнулся с той же проблемой при установке пакета "sentiment". Начал искать и перепробовал много команд. Наконец, пакет установлен с помощью следующей команды:
install_url("http://cran.r-project.org/src/contrib/Archive/sentiment/sentiment_0.2.tar.gz")
Comments