8

yaml パッケージをインストールすると、以前にインストールされていた場合、RStudio に迷惑なエラー メッセージが表示されます。パッケージが既にインストールされているかどうかを確認して、パッケージをインストールするかどうかをコードで決定するにはどうすればよいですか?

メッセージはポップアップ ウィンドウにあり、次のとおりです。

このインストールによって更新される 1 つ以上のパッケージが現在読み込まれています。これらのパッケージを更新する前に R を再起動することを強くお勧めします。RStudio は R を再起動し、再起動後にインストールを自動的に続行できます (すべての作業とデータは再起動中に保持されます)。インストールする前に R を再起動しますか?

4

4 に答える 4

14

これにより がロードyamlされ、まだインストールされていない場合は最初にインストールされます。

if (!require(yaml)) {
  install.packages("yaml")
  library(yaml)
}

または、パラメータ化する場合:

pkg <- "yaml"
if (!require(pkg, character.only = TRUE)) {
  install.packages(pkg)
  if (!require(pkg, character.only = TRUE)) stop("load failure: ", pkg)
}

アップデート。パラメータ化。

于 2013-07-16T17:43:53.990 に答える
4

または、require関数を使用することもできます。パッケージを読み込もうとし、パッケージが利用可能かどうかを示す論理状態を静かに返します。パッケージをロードできない場合にも警告が表示されます。

test1 <- require("stats")
test1

test2 <- require("blah")
test2
于 2013-07-16T17:42:51.913 に答える