2

私はRプログラミングにかなり慣れていません。R セッションの開始時にいくつかのパッケージが最初にインストールされるように、R セットアップをカスタマイズしようとしています。Rprofile.site ファイルに記述できる .First() 関数があることは知っています。ただし、インストール パッケージ コードを .First() 関数内に追加すると、パッケージがインストールされません。

さらに、パッケージを作成しようとするループに入ったようで、R のライブラリ フォルダーにロック ファイルを作成します。そのパッケージをインストールします。

Rprofile.site ファイルの末尾に追加したコードを次に示します。

.First <- function() {
  install.packages("customPackage.tar.gz", repos=NULL, type="source")
  cat("\nWelcome to R on ", date(), "\n") 
}

install.packages 行をファイルに (.First() 関数を使用せずに) 単独で追加しようとしましたが、役に立ちませんでした。

customPackage.tar.gz は、私が作成した既存のコードを使用して構築したパッケージを指します。これはカスタム パッケージであるため、リポジトリは NULL です。この行を .First() 関数に含めず、R セッションの起動後にコマンドを実行すると、パッケージは R/R-2.15.0/library フォルダーに正常にインストールされます。

R セッションの開始時にインストールする必要があるカスタム パッケージがいくつかあります。そのため、これらすべてのインストール コード行を Rprofile.site ファイルに追加することが重要です。どうすればこれを行うことができるかについてのアイデアはありますか? Rprofile.site ファイルのカスタマイズについてオンラインで調べたところはどこでも、既存のライブラリ (たとえば、ライブラリ (R2HTML)) を使用する例を示していますが、新しいライブラリをインストールするためのものはありません。助けてくれてありがとう!

編集:助けてくれてありがとう!実際には、これらのパッケージをユーザーごとに複数のマシンにインストールする必要があります。一度パッケージを手動でインストールするのではなく、サイト ファイルで行うのがよいと考えました。最初にパッケージをチェックするためのジャスティンの提案を試してみましたが、うまくいきました! 再び助けてくれてありがとう!

4

1 に答える 1

7

コンピューターからコンピューターに切り替える場合を除き、このパッケージは既にライブラリにあるはずです (つまり、パッケージが常にそこにあるはずなので、一度パッケージをインストールする必要があります)。installed.packages() [,1]またはを使用library()して、ライブラリ内のすべてのパッケージを表示します。そこにある場合は、これを使用します。

.First <- function() {
  require(customPackage)
  cat("\nWelcome to R on ", date(), "\n") 
}
于 2012-05-15T23:19:56.883 に答える