2013-02-11 26 views
16

現在、コンピューティングクラスタでRコードを実行しようとしていますが、クラスタ上の奇妙なファイアウォール設定のためにinstall.packages関数を実行できません。私はRコードでいくつかのパッケージしか使用していないので、パッケージを手動でダウンロードしてインストールすることによって、install.packages機能を使用しないことを望んでいました。手動でパッケージをダウンロードしてインストールするR

注:私は、R FAQに記載されているようにHTTPプロキシを使用してこの問題を回避する方法があることを認識しています。残念ながら、私のクラスターを担当している人たちは、これを設定するのに役立たず、私はこの代わりの方法を検討しなければなりません。

理想的には、CRANから自分のコンピュータにパッケージファイルをダウンロードし、これらのファイルをクラスタにアップロードし、Rの適切なコマンドを使用してインストールすることが理想的です。また、パッケージ既定のRディレクトリに "書き込み"する権限がないので、私の選択した場所にインストールされています(.libPaths関数を使用してR内でこれを行うことができます)

最後に、クラスタで作業しているのはUnix x86_64です。

+1

確かにこれを行うことができます。また、' install.packages'関数はNULLリポジトリ引数を受け入れます。 –

+0

恐ろしい!私はこれをまったく気付かなかった。次のスニペットが正しく動作することを確認するだけですが、正しいですか? 'install.packages(pkgs = MyListofTARGZFiles、repos = NULL、lib = MyLibraryDirectory)' –

+0

実際にリストであると仮定して、形式が正しく動作するかどうかは不明です。最初の引数は文字ベクトルである必要があります。 –

答えて

22

あなたは更なる説明のために、手動で?install.packagesのヘルプを参照してください、次のコマンド

install.packages('package.zip', lib='destination_directory',repos = NULL)

を使用してパッケージをインストールすることができ

+0

ありがとう!ちょうど確かめてください:UNIXコンピュータで作業しているので、パッケージはtar.gz形式ではいけませんか? –

+1

パッケージソース '.tar.gz'を持っていれば、同様に動作するはずです – iTech

+0

この回答もご覧ください:http://stackoverflow.com/a/30533227/3494126 – Ufos

0

install.packagesは( "libnameを"、LIB =「ファイル://F:/ test ")

+0

この質問に対する回答は既にあります。 –

+0

自分自身がライブラリのフォーマットに問題があったので追加しました。多分それは誰かを助けると思った! – Angel

関連する問題