
コンテナによるRStudio環境準備とRStudioプロジェクト作成について
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
データアナリティクス事業本部の鈴木です。
『クラスメソッド 機械学習チーム アドベントカレンダー 2022』の10日目のエントリーになります。
昨日(9日目)はLambdaのコンテナデプロイでYOLOv5の推論エンドポイントを作成する記事でした。AWSを使って自分で物体認識がしたい方からするとめちゃめちゃ熱い記事です。
現状、機械学習分野ではPythonを使う方が多いように思いますが、もちろん確率統計の理論的な論文を読んでいるときなど、サンプルコードがRであることがあります。
先日読んだ論文のサンプルコードがRStudioプロジェクトで作られていたのですが、.Rprojファイルをみて、「あれっ、これってなんだろう……」と思い、それだけで「もしかしてこのソースコードは自分には理解できないのでは!?」と思ってしまったので、その気持ちを乗り越えるため、基本的なことですが自分でぽちぽち作ってみることにしました。
ドキュメント
公式のドキュメントにRStudio Projectsの作成に関する記載があったので、こちらを参考にしました。
環境準備
今回はRockerとRancher Desktopを使用して環境を構築しました。
以下のdocker-compose.ymlを用意しておきます。
version: '3'
services:
rstudio:
image: rocker/rstudio
container_name: rstudio
ports:
- 8787:8787
environment:
PASSWORD: RStudio_PASS
TZ: Asia/Tokyo
volumes:
- ./R:/home/rstudio
ディレクトリ構造は以下のようにして、docker-compose upで起動します。
# ディレクトリ構造 tree # . # ├── R/ # └── docker-compose.yml # コンテナの起動 docker-compose up
コンテナが起動したら、localhost:8787にアクセスすると認証情報を求められるので、ユーザー名rstudioとdocker-compose.ymlに記載したパスワードを入力してログインします。
Rancher Desktopは以下のブログを参考に1.6.2をインストールしました。
RStudioはRStudio Server 2022.07.2 Build 576でした。
やってみる
環境が準備できたので、ぽちぽちRStudioプロジェクトを作って、どんな感じでできるのか見てみました。
RStudioにログインしたら、File > New Project...をクリックします。

New Project WizardでNew Directoryをクリックします。

New Projectをクリックします。

Directory nameはsample_projectとしておきます。

以下のようにファイルが作成されました。
tree # . # ├── R # │ └── sample_project # │ └── sample_project.Rproj # └── docker-compose.yml
プロジェクトのトップが開かれ、RStudio側のセッションも新しいものになります。

sample_project.Rprojの中身は以下のようになっていました。これが私が知りたかったファイルです。拡張子.Rprojのファイルは、プロジェクト オプション設定についての記載があり、ファイルシステムから直接プロジェクトを開くためのショートカットとしても使用できるそうです。
Version: 1.0 RestoreWorkspace: Default SaveWorkspace: Default AlwaysSaveHistory: Default EnableCodeIndexing: Yes UseSpacesForTab: Yes NumSpacesForTab: 2 Encoding: UTF-8 RnwWeave: Sweave LaTeX: pdfLaTeX
ここに記載の内容は、Project Optionsから確認できました。プロジェクト オプションは、設定することでRStudioの動作をカスタマイズするためのオプションです。これは例えばRStudioのUIからsample_project.Rprojファイルをクリックするとでてきました。



確かに、.Rprojの拡張子のファイルに記載されているのと同じ内容の設定ができますね。
おわりに
この記事では、RStudioからRStuioプロジェクトを作成してみて、できるファイルについて確認しました。.Rprojの拡張子のファイルはプロジェクトの設定ファイルで、ショートカットの役割も果たしてくれる便利なファイルであることも分かりました。Pythonメインで使っていると、いざ理論的な方面に興味がでて論文のサンプルコードを読んでもこういった細かいところで分からないと気になってしまいますが、また一歩前進できたのでよかったです。コンテナでの環境構築もご紹介したので、興味がある方はいろいろ触ってみて頂ければと思います。










