cucumber flesh

Rを中心としたデータ分析・統計解析らへんの話題をしていくだけ

2017年度版 RStudioを使ったReproducible Research、補足ポエム

この記事はRStudioアドベントカレンダーの10日目の投稿の補足です。私ももう、ゴールしても良いよね、という気になってきました()。本体は以前書いた記事で申し訳ないのですが、

qiita.com

になります。古くなったので刷新し、追記をしました。

RによるReproducible Researchの話は@psycle44さんによる5日目の記事でも書かれているのですが、補足として私の所感を述べたいと思います。以下はざっくりとした私の見解です。ポエムです。

ここで扱う、Reproducible Researchの話はRやPythonで記述されたコードにおける再現性の話です。海外では数年前から流れができ始め、現在では市民権を得て大きな流れになっているように感じます。一方日本国内でも少しずつですが認知されつつあり、一部のユーザの間ではかなり浸透しているという印象があります。

そもそも再現性とは

学術論文では、調査地や調査対象、時期に始まり、データを得るための詳細や解析に利用したツール、ライブラリとそのバージョンまで書いたりしますよね。良い論文というのはしっかりとした再現性が担保できることだという話も聞いたことがあります。

で、現在ではRやPythonといったスクリプト言語で統計解析やモデリングを実行しますよね。そうなったら、そのコードで書いた内容も「方法」として扱っても良いよね、となるわけです。そうした意味ではバージョン管理をすることは一つの選択肢となり得ると思います。

Git?

Gitはバージョン管理システムの一つで、プログラマやエンジニアの中で使われてきたものですが最近ではデザイナや書籍の編集者も使っています。

Gitの恩恵はいろいろあり、その感じ方も多様ですが、Reproducible Researchでの再現性を保証するのに十分な機能を備えている気がします。Gitを用いる理由は自分自身のためでもあり、共同編集者のためでもあり、第三者のためでもあります。

以前、研究者に対してバージョン管理システムの話をしたことがありましたが、「Dropboxのように意識せずとも使えるようなものでないと使う気にならない」と言われました。Gitは確かにそこまで気がきくものではありません。ですが得られるものは大きいです。ぜひ一度使ってみてほしいものです。またGit以外で他に良いツールがあれば教えてほしいです。

何も全てのGitコマンドに精通する必要はありません。コミット、プッシュ、そしてブランチという概念について少しでもわかっていれば十分にGitを導入することができると思います。私も必要な操作については都度調べたりします。そしてRStudioではこうした最低限必要であろう機能が備わっています。逆に複雑なGitの機能は実装されていません(Shell機能を通して実行することはできます)。

まだRStudio or Gitを使ったことがないという人は今日できることから始めてみてはどうでしょう。まずはコミットで記録していくだけで良いと思います。

Happy Coding with R!

過去の資料とか

speakerdeck.com

speakerdeck.com

オススメ

speakerdeck.com