PythonよりもR (rstan) を使いたくなる時がたまにあります(一番下の参考書などご参照)。
で、そういった時に、windowsだと以下のツイートのように、
現在のStanの計算は、WindowsよりLinuxの方が3倍ぐらい速いみたい(モデルにもよるけど)。Windowsの人はWSLをインストールして実行せよ、そしてRStudioサーバを使って開発するといいよ、とのこと。 https://t.co/6dpU7USlOh
— Kentaro Matsuura (@hankagosa) 2020年4月25日
wsl2上の環境でRを実行したほうが良いことも多いので、
wsl2でGUIのR環境(Rstudio)を設定してみましたというお話です。
(上記のツイートではサーバー版Rstudioが言及されていますが、
当時はwsl2でGUIアプリを使うのがかなり難しかったです。
windows 11だとGUIアプリも比較的簡単に使えるようになっているので
この記事ではGUIアプリ版を使ってみたいと思います。)
step.0 wsl2とドライバーの準備
まずは、wsl2の有効化を下のリンク先にのっとって行います。
(ストアアプリでもwsl導入できるらしいのでそっちの方が安全かも)
以下の記事に従ってドライバをインストールします。
以下のリンク先から対応するグラボのドライバをインストールしましょう。
以上で、wsl2でGUIアプリが動く環境を作れました。
step.1 ubuntu環境の下準備
ubuntuを起動して、最低限のセットアップを行います。
パッケージマネージャーの情報を更新します。
sudo apt update sudo apt upgrade
そして、ビルドツールをいれます。
sudo apt install build-essential
また、 rstan
を入れる場合は以下のツールも入れておきましょう。
sudo apt install libv8-dev sudo apt install libcurl4-openssl-dev
あとは、他のライブラリ(brms
など)をRに入れる際に必要になるところだと
以下あたりもまとめて入れてしまってもいいかもしれません。
sudo apt install libxml2-dev
step.2 Rをubuntuにインストール
続いて、ubuntuにRをインストールします。
Rでググっていくと以下のページにたどり着きます。
そのページの中の、赤線を引いてあるubuntuのURLを開くことで以下のページにたどり着けます。
https://cran.ism.ac.jp/bin/linux/ubuntu/
基本的にはこちらにのっとってコマンド入力するだけです。
sudo apt install --no-install-recommends software-properties-common dirmngr wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu $(lsb_release -cs)-cran40/" sudo apt install --no-install-recommends r-base
なお、rstan
などコンパイルを必要とするパッケージをインストールする予定の方は、
以下のfull READMEに書いてあるように
https://cran.ism.ac.jp/bin/linux/ubuntu/fullREADME.html
sudo apt install r-base-dev
もやりましょう!
(ちなみに私はこれに気づかず、rstanのインストールで半日以上溶かしてしましました...)
step.3 Rstudioをubuntuにインストール
それではお待ちかねのGUIアプリのRstudioをインストールします。
Rstudioのサイトから、ubuntu向けのdebファイルのリンクを確認します。
そして、ubuntuのターミナル上からdebファイル入手&インストールをやっていきます。
cd ~/tmp wget https://download1.rstudio.org/desktop/bionic/amd64/rstudio-2021.09.0-351-amd64.deb sudo apt install gdebi sudo gdebi rstudio-2021.09.0-351-amd64.deb
これで ubuntu on Linux 上にめでたくRstudioがインストールできました!
この状況で、ubuntu ターミナル上で
rstudio
と打ち込むと、以下のようなGUIアプリが起動します。
めでたしめでたし
step.4 Rstudioの日本語対応
とまぁこれで概ね問題ないのですが、
この状態だと日本語フォントがRstudioから見えないので
日本語ファイルなどが文字化けして見えます。
そこで、以下のようにフォントをインストールしてみます。
sudo apt install fonts-takao-gothic
あわせて fonts-arphic-uming
もinstallしている事例もあったので、
セットでインストールしてもよいかもしれません。
Rstudioが終了できなくなった場合
このように、ubuntuからコマンドで起動できたRstudioですが
ubuntuアプリを閉じてしまったりするとゾンビプロセスみたいに
普通には削除できないプロセスになってしまうことがありました。
こういう場合は、再度ubuntuアプリを立ち上げ、
ps aux
でRstudioのプロセスID(PID)を確認し、
kill {PID}
することで強制終了できます。
余談:rstanよりcmdstanrの方がイケてるらしい
界隈では rstan
より cmdstanr
に流れつつあるみたいですね。
www.slideshare.net
パッケージのインストールは下記の公式ページの手順を見れば一発ですが
要は以下のコマンドポチポチでOKみたいです
install.packages("cmdstanr", repos = c("https://mc-stan.org/r-packages/", getOption("repos"))) library(cmdstanr) check_cmdstan_toolchain() # The C++ toolchain required for CmdStan is setup properly! と表示されればOK install_cmdstan(cores = 2)