このブログは、旧・はてなダイアリー「檜山正幸のキマイラ飼育記 メモ編」(http://d.hatena.ne.jp/m-hiyama-memo/)のデータを移行・保存したものであり、今後(2019年1月以降)更新の予定はありません。

今後の更新は、新しいブログ http://m-hiyama-memo.hatenablog.com/ で行います。

ライブラリロケーションとインストールされたパッケージ群

ライブラリロケーションは、.libPaths()関数が管理している。この関数固有の内部変数.lib.locを持っていて、そこにディレクトリ文字列のリストが保存されている。

  • 処理系の初期化時に、デフォルトディレクトリ R.home("library") を .Library変数にセットする。
  • .Library.site変数が Rpofile.site, ~/.Rprofile でセットされるかも知れない。
  • .Library.site と .Library をアペンドしたベクトルを.lib.locに設定する。
  • 存在しないディレクトリは除かれる。
  • ~/.Rprofile で .Library.site をセットしても効かない。タイミングが遅すぎる!
  • 実行中に、.libPaths(newLocation) で足すことが出来る。存在しないディレクトリは足せない。
  • 実行中に、.Library, .Library.site を書き換えても意味がない。

library()やrequire()は、.lib.Paths()の値を使ってパッケージの実体を検索する。

インストール済みパッケージ群の詳細な情報はinstalled.packages()、名前のリストは .packages()。


> pkgs <- installed.packages()
> pkgs[, 1]
ggplot2 animation assertthat base BH
"ggplot2" "animation" "assertthat" "base" "BH"

... 途中略 ...

translations utils whisker XML xml2
"translations" "utils" "whisker" "XML" "xml2"
>
> .packages(all.available=T)
[1] "ggplot2" "animation" "assertthat" "base" "BH"

... 途中略 ...

[86] "utils" "whisker" "XML" "xml2"
>