web-dev-qa-db-ja.com

「パッケージ '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では利用できません。警告は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では使用できませんか?
https://stackoverflow.com/questions/21580661/installation-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のインストール方法は? 「パッケージは利用できません」と表示されました
パッケージ 'dataset'は利用できません(Rバージョン3.1.1の場合)
"パッケージ 'rhipe'は利用できません(Rバージョン3.1.2の場合)"
https://stackoverflow.com/questions/31439092/package-dplyr-is-not-available-for-r-version-3-1-1

482
Richie Cotton

1。綴ることはできません

テストする最初の事柄はあなたが正しくパッケージの名前をつづっていることですか?パッケージ名はRでは大文字と小文字を区別します。


2。あなたは正しいリポジトリを見ませんでした

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

setRepositories()

?setRepositories も参照してください。

どのリポジトリがあなたのパッケージを探すかを見るために、そしてオプションでいくつか追加のものを選択します。最低でも、通常はCRANを選択し、Windowsを使用している場合はCRAN (extras)、必要に応じてBioc*リポジトリを選択します。 [gen/prote/metab/transcript]オミックス 生物学的分析.

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


3。パッケージは選択したリポジトリにありません

使用可能なすべてのパッケージを返します。

ap <- available.packages()

Rで利用可能なパッケージの名前?available.packages を参照してください。

これは大きな行列なので、データビューアを使って調べることをお勧めします。あるいは、行名をテストすることによって、パッケージが使用可能かどうかを素早く確認することもできます。

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

あるいは、利用可能なパッケージのリストは CRANCRAN(extras) のブラウザで見ることができます。 、 BioconductorR-forgeRForge および github

CRANミラーとやり取りするときに表示される可能性があるもう1つの警告メッセージは、次のとおりです。

Warning: unable to access index for repository

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


パッケージが利用できない理由はいくつかあります。


4。あなたはパッケージが欲しくないです

おそらくあなたは本当にパッケージを望んでいません。 パッケージとライブラリ の間、またはパッケージとデータセットの間の違いについて混乱するのが一般的です。

パッケージは、Rを拡張する標準化された材料の集まりである。コード、データ、または文書を提供する。ライブラリとは、Rが利用可能なパッケージを見つけるためにRが知っている場所(ディレクトリ)です。

利用可能なデータセットを見るには

data()

5。 RまたはBioconductorが古くなっています

より最近のバージョンの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。パッケージが期限切れです

archived (メンテナンスされなくなり、 R CMD check testsに合格しなくなった場合)。

この場合、 install_version() を使用して古いバージョンのパッケージをロードできます。

library(remotes)
install_version("foobarbaz", "0.1.2")

別の方法はgithubのCRANミラーからインストールすることです。

library(remotes)
install_github("cran/foobarbaz")

7。 Windows/OS X/Linuxのバイナリはありません

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

パッケージがコンパイルコード(C、C++、FORTRANなど)を必要とする場合は、Windowsで Rtools またはOS Xで developer toolsをインストールします。 に付随する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")

this SO imanuelc の回答および ?install.packages の詳細セクションに記載されています。


10。パッケージは非標準のリポジトリにあります

あなたのパッケージは標準外のリポジトリにあります(例: Rbbg )。それがCRAN標準に合理的に準拠していると仮定して、あなたはまだinstall.packagesを使ってそれをダウンロードすることができます。リポジトリのURLを指定するだけです。

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

RHIPE は、CRAN風のリポジトリにはなく、独自の インストール手順 を持っています。

493
Richie Cotton

最新のR(3.2.3)ではバグがあり、正しいパッケージを見つけられないことがあります。回避策は、リポジトリを手動で設定することです。

install.packages("lubridate", dependencies=TRUE, repos='http://cran.rstudio.com/')

他の質問で 解決策が見つかりました

82
Dmitry

Rlibcurlのバージョンによっては問題があるようです。私はMac (R version 3.2.2)Ubuntu (R version 3.0.2)に同じ問題を抱えていて、どちらの場合もinstall.packagesコマンドの前にこれを実行することによってそれは解決されました

options(download.file.method = "wget")

解決策は友人によって提案されましたが、私はどのフォーラムでもそれを見つけることができなかったので、他の人にこの回答を提出します。

23
Saba

11。 R(または他の依存関係)が古くなっているため、更新したくない

警告これは厳密にはベストプラクティスではありません。

  • パッケージソースをダウンロードしてください。
  • DESCRIPTIONファイルに移動します。
  • テキストエディタで問題の行を削除します。

    Depends: R (>= 3.1.1)
    
  • ローカルから(すなわちDESCRIPTIONの親ディレクトリから)インストールします。

    install.packages("foo", type="source", repos=NULL)
    
11
dardisco

この解決法はRを破るかもしれませんが、これは99%の時間で動作する最も簡単な解決策です。

あなたがする必要があるのはちょうどです:

install.packages('package-name',repos='http://cran.us.r-project.org')

ここで著者が述べたように ここで

10
PaladiN

私に起こったことの一つは、私のLinuxディストリビューションで提供されているRのバージョン(Ubuntu 14.04で提供されているRバージョン3.0.2)がCRANで入手可能な最新バージョンのパッケージ(私の場合plyrバージョン1.8)には古すぎるということです。今日の3)。解決策はRからインストールしようとする代わりに私のディストリビューションのパッケージングシステムを使うことでした(apt-get install r-cran-plyrは私にplyrのバージョン1.8.1を手に入れました)。たぶん私はupdateR()を使ってRを更新しようとしたかもしれませんが、そうすることが私のディストリビューションのパッケージマネージャに干渉することを恐れています。

8
bli

これは私に何が悪いのかをデバッグする時間を節約しました。多くの場合、古くなっているだけのミラーです。この関数は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"))
8
Tombart

私は慎重に R をインストールするための指示に従うことによってUbuntuでこのエラーを修正しました。これは含まれています:

  1. /etc/apt/sources.listファイルにdeb http://cran.utstat.utoronto.ca/bin/linux/ubuntu trusty/を追加する
  2. Sudo apt-get updateを実行する
  3. Sudo apt-get install r-base-devを実行する

あなたが望むならステップ1のためにあなたは私のトロント大学のものの代わりに任意のCRANダウンロードミラーを選ぶことができます。

4
AlexG

これは私が同じ警告を受けた時にR-3.4.1にpsychパッケージをインストールするために私がやっとできることです

1:そのパッケージをグーグル。

2:tar.gz拡張子を持って手動でダウンロードした

3:Rでパッケージをインストールするためのオプション "Package Archive File(.Zip; .tar.gz)"を選択しました

4:ダウンロードしてインストールをクリックした場所をローカルで参照

あなたは警告を受けるかもしれません:依存関係 'xyz'はそのパッケージには利用できません、それから最初にそれらをリポジトリからインストールしてそして次にステップ3-4を実行してください。

4
Biboswan

プロキシ設定を変更することで解決できる同じ問題(Linux上)がありました。プロキシサーバーの背後にいる場合、R内の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 version-x-y-zでは使用できません」と読んだとき、それは最初の考えではありませんでした...

HTH

3
nachti

私はソースコードからRパッケージをインストールするときにrepos=NULLを入れるのを忘れているのを間違えました。この場合、エラーメッセージは少し誤解を招く可能性があります。package 'foobarbaz' is not available (for R version x.y.z)

問題はRのバージョンではなく、reposパラメータでした。私はこの機会に私のために働いたinstall.packages('path/to/source/code/of/foobarbaz', type='source', repos=NULL)をしました。

これが誰かに役立つことを願っています。

2
damjan

私がソースとしてbioconductorを使用してからbiocLiteを呼び出すとき、それはほとんどいつも私のために働きます。例:

source("https://bioconductor.org/biocLite.R")
biocLite("preprocessCore")
1
BioProgram

Docker imageを使って古いRバージョンをテストしようとしている間のもう一つのマイナーな追加rocker/r-ver:3.1.0

  1. デフォルトのrepos設定はMRANであり、これは多くのパッケージを取得するのに失敗します。
  2. そのバージョンのRはhttpsを持っていません、それで、例えば:install.packages("knitr", repos = "https://cran.rstudio.com")はうまくいくようです。
0
Jack Wasey