「パッケージ 'xxx' は利用できません (R バージョン xyz)」という警告にどう対処すればよいですか? 質問する

「パッケージ 'xxx' は利用できません (R バージョン xyz)」という警告にどう対処すればよいですか? 質問する

パッケージをインストールしようとしましたが、

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 では利用できません (install.packages の警告)
依存関係 'Rglpk' はパッケージ 'fPortfolio' では使用できません
R バージョンでパッケージが利用できない場合はどうすればよいですか?
R の bigvis パッケージは R バージョン 3.0.1 では利用できないのですか?
パッケージ 'syncwave'/'mvcwt' は利用できません (R バージョン 3.0.2 の場合)
パッケージ 'diamonds' は利用できません (R バージョン 3.0.0 の場合)
R の plyr パッケージは R バージョン 3.0.2 では利用できないのですか?
パッケージ bigmemory が R 64 3.0.2 にインストールされない
パッケージ「makeR」は利用できません(バージョン 3.0.2 の場合)
パッケージ 'RTN' は利用できません (R バージョン 3.0.1 の場合)
geoR パッケージのインストール中に問題が発生しました
パッケージ 'twitterR' は利用できません (R バージョン 3.1.0 の場合)
Rcpp パッケージをインストールするにはどうすればいいですか? 「パッケージが利用できません」というメッセージが表示されます
パッケージ 'dataset' は利用できません (R バージョン 3.1.1 の場合)
「パッケージ 'rhipe' は利用できません (R バージョン 3.1.2 の場合)」

ベストアンサー1

1. スペルが分からない

最初にテストすることは、パッケージ名を正しく入力したかどうかです。Rではパッケージ名は大文字と小文字が区別されます。


2. 正しいリポジトリを調べなかった

次に、パッケージが利用可能かどうかを確認します。

setRepositories()

参照?リポジトリを設定する

R がパッケージを検索するリポジトリを確認し、オプションで追加のリポジトリを選択します。少なくとも、通常は、Windows を使用している場合はCRANリポジトリを選択し、生物学的分析を行う場合はリポジトリを選択します。CRAN (extras)Bioc*

setRepositories(ind = c(1:6, 8))これを永久的に変更するには、次のような行を追加します。Rprofile.siteファイル。


3. パッケージは選択したリポジトリに存在しません

利用可能なすべてのパッケージを返す

ap <- available.packages()

参照Rの利用可能なパッケージの名前?利用可能なパッケージ

これは大きなマトリックスなので、データ ビューアーを使用して調べることをお勧めします。または、行名をテストしてパッケージが使用可能かどうかをすばやく確認することもできます。

View(ap)
"foobarbaz" %in% rownames(ap)

あるいは、利用可能なパッケージのリストはブラウザで確認することができます。クランCRAN(特典)バイオコンダクターRフォージRフォージ、 そしてGitHub

CRAN ミラーとやりとりしているときに表示される可能性がある別の警告メッセージは次のとおりです。

Warning: unable to access index for repository

これは、選択した CRAN リポジトリが現在利用できないことを示している可能性があります。別のミラーを選択してchooseCRANmirror()、インストールを再試行してください。


パッケージが利用できない理由はいくつか考えられます。


4. パッケージは不要

おそらくあなたはパッケージを本当に欲しくないのでしょう。パッケージとパッケージの違いについて混乱するのはよくあることです。パッケージとライブラリ、またはパッケージとデータセット。

パッケージとは、Rを拡張する標準化された素材の集まりで、コード、データ、ドキュメントなどを提供します。ライブラリとは、Rが使用できるパッケージを見つけるための場所(ディレクトリ)です。

利用可能なデータセットを表示するには、次のように入力します。

data()

5. Rまたはバイオコンダクターは古い

Rのより新しいバージョンに依存している可能性があります(または、それがインポート/依存しているパッケージの1つに依存している可能性があります)。

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バイナリはありません

それはWindows バイナリCRAN にはない追加のソフトウェアが必要なためです。また、一部のパッケージは一部またはすべてのプラットフォームのソースからのみ利用可能です。この場合、リポジトリにバージョンがある可能性がありますCRAN (extras)(setRepositories上記を参照)。

パッケージがコンパイルコード(C、C++、FORTRANなど)を必要とする場合は、Windowsにインストールします。RツールまたはOS Xでは開発者ツール付属の XCode を使用し、次の方法でパッケージのソース バージョンをインストールします。

install.packages("foobarbaz", type = "source")

# Or equivalently, for Bioconductor packages:
source("http://bioconductor.org/biocLite.R")
biocLite("foobarbaz", type = "source")

NeedsCompilationCRAN では、説明のフラグを確認することで、ソースからパッケージをビルドするために特別なツールが必要かどうかがわかります。


8. パッケージはGitHub/Bitbucket/Gitoriousにあります

GitHub/Bitbucket/Gitoriousにリポジトリがあるかもしれません。これらのパッケージにはremotesインストールするパッケージ。

library(remotes)
install_github("packageauthor/foobarbaz")
install_bitbucket("packageauthor/foobarbaz")
install_gitorious("packageauthor/foobarbaz")

( と同様にinstallrinstall.packages("remotes")最初に が必要になる場合があります。)


9. パッケージのソースバージョンはありません

パッケージのバイナリバージョンは利用可能ですが、ソースバージョンは利用できません。このチェックをオフにするには、

options(install.packages.check.source = "no")

記載の通りimanuelcによるこのSOの回答詳細セクション?install.packages


10. パッケージが非標準リポジトリにある

パッケージが非標準リポジトリにある場合(例:Rbbg)。CRAN 標準に十分準拠していると仮定すると、 を使用してダウンロードできますinstall.packages。リポジトリの URL を指定するだけです。

install.packages("Rbbg", repos = "http://r.findata.org")

RHIPE一方、CRANのようなリポジトリではなく、独自のインストール手順


11. リポジトリがダウンしているか存在しない

リポジトリのウェブサイトがダウンしているかアクセスできない場合、ホスト名またはディレクトリパスが間違っている場合、または他のいくつかの場合。これらは、次のようなヒントを与えてくれます。

install.packages("quux", repos = "https://does.not.exist/CRAN")
# Installing package into ‘/home/.../...’
# (as ‘lib’ is unspecified)
# Warning: unable to access index for repository https://does.not.exist/CRAN/src/contrib:
#   cannot open URL 'https://does.not.exist/CRAN/src/contrib/PACKAGES'
# Warning: package ‘quux’ is not available for this version of R
# A version of this package for your version of R might be available elsewhere,
# see the ideas at
# https://cran.r-project.org/doc/manuals/r-patched/R-admin.html#Installing-packages

ここで、「インデックスにアクセスできません」は、何か問題があることを示しています。残念ながら、何が原因なのかは特定されていません。この場合、はdoes.not.exist実際のホスト名ではないため、ネットワーク接続を作成できません。ホスト名が存在していた場合、エラーの原因は、/CRAN/がドメイン内の有効なディレクトリではない、必要なPACKAGESファイルとインデックスが見つからない、それらに対する読み取り権限がない、またはその他の一時的または永続的なエラーである可能性があります。

エラーでは必要な詳細レベルは提供されませんが、解決策は (これが問題である場合)、install.packages(., repos="https://...")(#10 のように) を使用して別のリポジトリを使用するか、 でグローバルに設定することですoptions(repos="https://...")


おすすめ記事