renvを使って、Rのパッケージ管理をする

プログラミング

プロジェクトごとにRのパッケージを管理したい場合、renvを

プロジェクトごとにRのパッケージを管理したい場合、renvを使えば簡単にパッケージの情報を保存できる。

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”でパッケージ管理していく。