都内の事業会社で分析やWebマーケティングの仕事をしています。大学・大学院では経済学を通じて統計解析を行うなどしておりました。企業に勤めてからは、機械学習やテキストマイニング、クローリング技術などに関心を持っています。(3)RStudioをdockerで使える、Rockerを触ってみたはじめにdockerは会社のエンジニア向けの勉強会で紹介されていて、存在は知ってはいたが使っていませんでした。先日参加したTokyo.RでRockerというものが紹介されており、よし使ってみようと思うに至りました。今回は遅ればせながら、Rockerを使ってみて、何かを回して、保存するという一連のチュートリアルをやってみます。専門家の方に怒られたらあれですが、私の理解はこんな感じです。DockerfileOS、言語、ライブラリ、バージョンなどをレシピの食材っぽい感じでテキスト形式で書かれたものイメージコンテナの元。Dockerfileをもとにdockerで生成できる。hubとか言うのサイトから入手できる。ここからコンテナ(RStudioとかを回したい環境のこと)を起動できる。ファイルの内容が消えないように残すこと。立ち上げたコンテナを永続化しないと都度データやインストールしたパッケージが消える。hubで提供されているイメージです。RockerのGitHubにはDockerfileも当然あげられていました。自分であれやこれや設定を追加するにはこれを参考にいじることになるのだと思います。やってみるまずは、dockerをインストールします。Macdocker自体はだいぶ前にインストールしたので、入れ方を忘れていますが、ここを見ればわかるはず。rocker/tidyverseブラウザなどで以下を表示http://localhost:8787/1http://localhost:8787/DALEXのサンプルコードを回してみる。DALEXはTokyo.Rでも紹介されている機械学習の解釈可能性に関する手法をあらかた実践できるパッケージです。eXplanation以下の図はDALEXなどを使ってGLMで推定した結果の各特徴量の影響度をプロットしたものです。ターミナルでコンテナのIDを確認する。ps分析結果やソースコードやデータを保存したいので、コンテナの永続化を行います。perio/rocker_hadleyここではユーザー名をperio、イメージ名をrocker_hadleyにしています。永続化したコンテナのイメージがきちんと存在するか確認してみます。2.21GBありますね。先程のコンテナを止めてみましょう。コンテナIDを指定するだけです。f9317be953b5永続化したコンテナを読み込んでRstudioを起動してみます。perio/rocker_hadley実は、誤って最新の状態で保存せずに再度立ち上げてしまいましたwDALEXのサンプルコードを回すために色々パッケージインストールしたので、それが消えてしまった。元のimageにはないRDataがあるので、一応、永続化はできているので安心です。うむ、次からはきちんと保存をしよう。これでどのPCでも同じ条件で分析していけるので、良さそうです。一部で入らないパッケージ(sfパッケージとか)があったので、より良いDockerfileを探し求めたいとも思いますね。sfを含む空間解析系のパッケージを扱うものとして、rocker/rspatialがあります。記事中に登場するtidyverseイメージをベースにしているので同様に使えます。tidyverseイメージで入れるよりは大分楽になるかと。imageを教えてくれました。imageを選ぶのが良いのでしょう。rocker/geospatialせっかくなので先日作成した事故物件分析用のコードを回してみましょう。mapviewもインストールできて、問題なく使えました。u_riboさんありがとう。[R]ボージョレ・ヌーボーのコメントに対してLDATSパッケージを使って時系列トピックモデルを扱うkamonohashiperry.com。