ゆとりデータサイエンティストの諸々所感

データ分析会社で研究開発をしている、ゆとり世代データサイエンティストが学んだ内容や最新トピックについて諸々語る予定

dplyrとR界隈について

Pythonianの私としてはブログの記事として、

Pythonよりも先にRについて書くのは若干気になるものの、

同僚のR使いに面白い共有を頂いたので備忘のため記事にします。

※同僚の受け売りなので、私はあんまりRに詳しくないです

 

近年、R界隈に彗星のごとく現れた、Hadley神ことHadley Wickham氏

had.co.nz

hadley (Hadley Wickham) · GitHub

 

同僚によると、彼の登場により、R界隈に大きい変化の波が来るとのこと

日本語の資料もないので、日本ではほとんど話題になってないが、時間の問題らしい

 

彼の書いた、Advanced R (http://adv-r.had.co.nz/)は

Rのパッケージの作成方法から、

テストといったコードの品質保証まで網羅的に書かれており、

Rをあまり使わない私としても非常に参考になる

 

これにより近年のR(笑)の流れに歯止めがかかり、

Tokyo.RでもRがメイントピックになる日が来る! かな?

 

ウチの会社でも、分析のみの案件では良いものの、システム化が絡むとRは

カワサキバイクのコピペ並に、エンジニアの顔が歪みます

       (それよりも分析官が、テストを書いていないことに起因することが多いですが・・・)

 

ともあれ、分析官にR使いは多いので、

Rがシステム化に耐えられる様になるのは、なにより喜ばしいこと

この流れはこの辺ウォッチしとけば追えるのかな


R-bloggers | R news & tutorials from the web

 

 

前置きが長くなりましたが、dplyrについて語ります。

といっても先人たちがすでに良記事をたくさん書いているので

使い方はそっちを見てください。この記事では思想のみ語ります。

 

日本語資料

英語資料

 

まだまだR-pubs漁れば、たくさん出てきます。

 

dplyrの特徴としては、

  • (Rなのに)速い!
  • filter()、 arrange()、 select()、 mutate()、summarise()の5つの動詞に集約された洗練された設計
  • DB上のテーブルも同じ操作で扱える
  • 近年流行りのパイプ(『%>%』←こいつ)でコードの見渡しが非常に良い。
    SQLライク(筆者感)にもコードが書ける。

 

特にDB上のテーブルを簡単に扱えるのは強力かと

 

Pythonでも Pandas + SQLAlchemy で似たことはできるが、

SQLAlchemyがフルスタックのORマッパなので、

高機能過ぎて学習に時間がかかったり、手順がどうしても多くなる

 

その点、Rはデータ分析に特化しているので、シンプルに機能を絞り込めているので、

使い勝手が良さそう。

 

久しぶりにRで心を動かされたので記事にしてみました。

私もRしっかり勉強するかな・・・