プロジェクトごとにRのパッケージを管理したい場合、renvを
プロジェクトごとにRのパッケージを管理したい場合、renvを使えば簡単にパッケージの情報を保存できる。
renvについて
- https://rstudio.github.io/renv/articles/renv.html
- RStudioによって管理されており、packrat に替わるパッケージ管理ツールとして、開発されている
- バージョン:0.12.0 で行ったrenvの管理方法を記載する
renvでパッケージを管理する
- Rをダウンロードする
- Rコマンドで、プロジェクト配下で、
renv::init()
を実行 - プロジェクトの.Rでファイルで
library()
でライブラリを読み込む - Rコマンド、
renv::snapshot()
で”renv.lock” ファイルにパッケージ情報を保存する
# R
# renvを実行する
> install.packages("renv")
# 実行ディレクトリ
> getwd()
"プロジェクトディレクトリ"
# プロジェクトディレクトリではない場合
> setwd("プロジェクトディレクトリ")
# 作業ディレクトリ
> dir()
[1] "test.R"
# renv::init()でプロジェクトを初期化
> renv::init()
# ファイル構成
> dir()
[1] "renv" "renv.lock" "test.R" "test.Rproj"
# 使用するパッケージをインストールする
> install.packages("tidyverse")
# test.Rでパッケージを読み込む
# ファイルの中身
> file.show('test.R')
library(tidyverse)
# "renv.lock"にRパッケージを管理する
> renv::snapshot()
renv::snapshot()
は、test.Rの中を見て、使用しているパッケージのみを”renv.lock”に保存してくれる。
優秀。。
renvで管理されたパッケージをダウンロードする
- Rをダウンロードする
- Rを実行し、
install.packages("renv")
でrenvをインストールする - プロジェクトの配下で(“renv.lock” が存在するディレクト)で、
renv::restore()
を実行する
# R
# renvを実行する
> install.packages("renv")
# 実行ディレクトリ
> getwd()
"プロジェクトディレクトリ"
# プロジェクトディレクトリではない場合
> setwd("プロジェクトディレクトリ")
# "renv.lock" が存在することを確認
> dir()
[1] "renv" "renv.lock" "test.R" "test.Rproj"
# "renv.lock"で管理されたRパッケージをインストール
> renv::restore()
プロジェクトのRファイルで作業を行い、library()
でパッケージを読み込んだら、renv::snapshot()
をRで実行し、”renv.lock”でパッケージ管理していく。