0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Rのインストールと管理を多機能なrigで。パッケージのインストールをP3Mで高速に、pakで簡単に

Posted at

rig

R の多機能なインストールマネージャーです。簡単に R のインストールやアップデート、複数のバージョンのインストールと切り替えが行えます。機能の詳細や、各 OS ごとのインストールについては、次の rig のサイトで確認してください。

  • rig のインストール時に、次の P3M のリポジトリの追加と、pak のインストールが同時に行われるので、R を新規インストールするときは、rig を使うことをおすすめします

  • rig は、既存の R を管理しません。rig を利用したいときは、R をアンインストールしてから、rig でインストールし直すのが良いと思います

  • rig をインストールした場合は、次の P3M のリポジトリの追加と pak のインストールは必要ありません(二度目になりますが念の為)

P3M(Posit Public Package Manager)

P3M では、CRAN、PyPI、Bioconductor からのパッケージの検索とインストールが行えます。特に、Posit によりビルドされた CRAN のバイナリパッケージを使うことで、インストールを高速化することができます。

  • リポジトリの追加方法は、ユーザーガイドを御覧ください

  • Linux で、バイナリービルドパッケージを使用してインストールを高速化したいときは、Set up your environment to install R packages from cranの「Linux Distribution: what linux distribution are you using?」でディストリビューションを選択してください

  • リポジトリ設定のコード例
    • これは、debian12 の場合です
    • P3M の URL は上で取得したURLに変更してください
    • R のコンソールで実行する
    P3M のリポジトリの設定
    local({
      repos <- c(P3M = "https://packagemanager.posit.co/cran/__linux__/bookworm/latest")
      options(repos = c(repos, getOption("repos")))
    })
    
    • この設定は、現在開いているセッションのみ有効です

  • 常にリポジトリ設定が有効になるようにするには
    • 次のコードを R のコンソールで実行すると.Rprofile に上のコードを追加することができます
    • やはり P3M の URL は、自分の環境にあった URL に変更してください
    .Rprofile に追加
    add.Rprofile <- 'local({
      repos <- c(P3M = "https://packagemanager.posit.co/cran/__linux__/bookworm/latest")
      options(repos = c(repos, getOption("repos")))
    })
    '
    cat(add.Rprofile, file = ".Rprofile", append = TRUE)
    
    • 自分の環境では正しく動作することを確認していますが、実行は自己責任でお願いします

  • 現在設定されているリポジトリは、getOption("repos") で確認できます

  • ここまで R での使用を前提に書いてきましたが、P3M は、Python でも使えます。Configuring Python Environments

pak

pak を使えば pak::pkg_install() だけで、install.packages()devtools::install_github() の代わりに、CRAN、Bioconductor、GitHub、URL、gitリポジトリ、ローカルファイルやディレクトリから R パッケージをインストールすることができます。他の機能や各 OS の対応状況は、次の pak のサイトで確認してください。

  • 特に、Linux で pak を使う上で嬉しいのは、パッケージインストール時にシステム依存関係を確認して、必要なシステムパッケージを自動的にインストールしてくれるところです

  • 既存の R にバイナリビルドパッケージをインストールするときは、R のコンソールで次のコードを実行してください
    • 1行のコードでは見にくいので、All about installing pak.に載っている方のコードを記載しておきます
    バイナリビルドパッケージのインストール
    install.packages("pak", repos = sprintf(
      "https://r-lib.github.io/p/pak/stable/%s/%s/%s",
      .Platform$pkgType,
      R.Version()$os,
      R.Version()$arch
    ))
    

  • インストール関数は、pak::pkg_install() と書いたが、実は pak::pak() というとても入力が速く簡単な関数でパッケージのインストールが行える
    pak::pak("tidyverse")
    
    • これだけで debian12(chromebook)において、事前にシステム依存ファイルをインストールすることなく、tidyverse のインストールができた
    • P3M とともに使用して tidyverse のインストールが2分弱でできた
    • これに感動してこの記事を書いた
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?