0

1 年以上前から、「rgdal」パッケージを失うことを恐れて、R のバージョンを更新することを恐れていました... Mac で R を使い始めたとき (そしておそらく今でも?)、そうしなければならなかったソースからインストール/ R 内からパッケージ インストーラーを介してインストールできませんでした。これは複雑で、私にとって重要なこのパッケージを取得するには、自分よりも経験豊富な R ユーザーに助けを求めなければなりませんでした。

しかし、最終的にリスクを負って R を更新する必要があると判断しました。次の手順を使用しました。

#--run in the old version of R
setwd("C:/Temp/")
packages <- installed.packages()[,"Package"]
save(packages, file="Rpackages")

これに続いて、新しいバージョンで:

#--run in the new version
setwd("C:/Temp/")
load("Rpackages")
for (p in setdiff(packages, installed.packages()[,"Package"]))
install.packages(p)

この投稿で見つかりました:

R の新しいバージョンを簡単にインストールするには?

これは機能しているようです(たとえば、ベース インストールに含まれていないライブラリを開くことができます... rgdal を含む) が、このプロセス全体をよりよく理解するために、次の質問があります。

1) このアプローチに従って、以前に古いバージョンにインストールしたすべての R パッケージのリストを本質的に保存し、次に (新しいバージョン内から) のセットとは異なるパッケージのセットを決定した場合ですか?新しいバージョンの基本ライブラリを作成し、R にこの SET に属するパッケージをインストールするように指示しましたか?

2)上記が当てはまる場合、このアプローチは後でパッケージを更新する必要をなくしますか(たとえば、新しいバージョン内からパッケージをインストールすると、最新バージョンがインストールされます)?

3) よくあると思われるもう 1 つのアプローチ (上記の投稿への回答の 1 つで推奨されています) は、すべてのパッケージが R の外部のディレクトリに保存されるように設定してから、設定を変更することです ( .Renviron ファイルまたは適切なファイルが何であれ) 常にこの外部ディレクトリでパッケージを検索する...なぜこのアプローチが一部の人々に好まれているのか疑問に思っていますか? このアプローチは、R を更新した後、すべての準備が整う (たとえば、更新されていないパッケージを使用する意思がある場合) ことを意味するためですか? Rの新しいバージョンをインストールした後でもupdate.packages()を使用する必要がある場合、これは多かれ少なかれそれらを再インストールするだけではないので、私は混乱していますか?利点は何ですか?

4) インストール ルート (外部ディレクトリに保存してから更新ルートではなく) を使用する場合、心配する必要があるパッケージはありますか? R は、4 つのパッケージが最新バージョン (R. 3.0.3) で利用できないことを示す警告を表示しました。これらのパッケージを使用する必要がある場合は、一時的に古いバージョンの R に戻す必要があると思います。これはすべて正しいですか?

助けてくれてありがとう!

4

1 に答える 1

3

1) はい。

2) 新しくインストールされたパッケージは最新バージョンになりますが、update.packages(ask=FALSE, checkBuilt=TRUE)後で実行しても害はありません。すべてが最新であることを確認してください。

3) この特定のアプローチを提案する人は誰も見たことがありませんが、同様のプロセスがR for Windows FAQで提案されており、1) 新しいバージョンをインストールする 2) パッケージを古いバージョンのライブラリ フォルダーからライブラリにコピーする新しいバージョンのフォルダーと 2) 実行中update.packages(checkBuilt=TRUE, ask=FALSE)installed.packages()この方法と...の方法を比較すると、明確な利点があるとは思いません。

4) 議論中のすべてのメソッドは CRAN パッケージに限定されているため、たとえばバイオコンダクターからインストールしたものはカバーされません。また、CRAN から削除されたパッケージはカバーされません。古いバージョンの R を使用するか、手動でビルドしてインストールする必要があります。

于 2014-03-09T15:04:49.470 に答える