★データ解析備忘録★

ゆる〜い技術メモ

RユーザのためのRStudio[実践]入門 という本が出ます。

久しぶりの更新が宣伝ですいません。 タイトルの通り、6/29に書籍が出ます。

副題も含めたちゃんとしたタイトルは

RユーザのためのRStudio[実践]入門−tidyverseによるモダンな分析フローの世界−

です。

RユーザのためのRStudio[実践]入門−tidyverseによるモダンな分析フローの世界−

RユーザのためのRStudio[実践]入門−tidyverseによるモダンな分析フローの世界−

自分が筆頭著者になっているのは単純に書いたページ数が一番多いからです。正直、この本に対しては溢れんばかりの熱い想いがありますので、特に誰かに頼まれたわけではないけどこうして宣伝記事を書いています。

どんな本なの

この本は以下のような構成になっています。

  1. RStudio入門(担当: @y__mattu)
  2. スクレイピングによるデータ取得(担当: @y__mattu)
  3. dplyrを中心としたデータハンドリング(担当: @yutannihilation さん)
  4. ggplot2による可視化(担当: @kyn02666 さん)
  5. R Markdownによるレポーティング(担当: @kazutan さん)

本書の魅力はたくさんあるのですが、ぱっと思いつくだけでも4つはあるのではないかと思います。

  1. モダンなRの決定版となり得る、tidyverse に準拠した解説
  2. 充実したRStudio の機能解説
  3. これ1冊でどんなデータ分析にも対応可能なこと
  4. (私以外の)豪華な著者陣

tidyverseへの準拠

既にご存知の方もいるかと思いますが、(前身のhadleyverseからの流れにある)tidyverse に含まれるパッケージは非常に便利なものが多く急速に普及しています*1。Tokyo.Rなどの勉強会でも当たり前のように登場するものです。ただ、この便利なtidyverseを知らない人が多いことも事実です。特にRを初めて間もない人は知らないことがほとんどです。この要因の一つとして考えられるのは「tidyverseを扱った書籍が少なく、特に入門書はほぼ皆無であること」です。

書籍レベルでtidyverseというとHadley Wickham氏の『R for Data Science (邦訳: Rではじめるデータサイエンス)』がありますが、実はこの本はRやtidyverseに慣れていない人には分かりづらい本であると個人的には思っています。一方本書はtidyverseの入門者でも読めるように作られています。逆に言うと、本書を呼んだあとにHadleyの方を読むとより理解と知識が深まるのではないかと思います。このようなモダンなRへの入門というコンセプトの邦書は僕の知る限りではありません。

ただ、書かれているのは入門レベルだけではありません。kazutan さんの記事にもある通り、本書はただの入門書ではなく、「本格的、そして実践的にRを使っていくために必要なものを詰め込んだ決定本」です。どんなレベルのユーザーであっても手元に1冊おいておけるようなものを目指しました。

RStudio の解説

本書は書名にもある通り、RStudioの機能解説が充実しています。本書で準拠したのはRStudio ver 1.1.423 (2018/2月時点での最新版)になります。1.0から1.1に上がったタイミングで、いくつかの機能が追加されたのですが、その機能 も本書はカバーしています。ただし、陳腐化しないようコアな機能を中心に、さらに知らないと損をするような機能を重点的に紹介(kazutanさんの記事より引用)しています。特に4章の可視化や5章のレポーティングではRStudioの機能が大活躍します。この点でもあらゆるRユーザが本書を手に取る重要な意味となりえると思っています。

これ1冊でどんなデータ分析にも対応可能なこと

これは本書の冒頭にも書かれていますが、この本は「モデリング以外の分析フローを網羅」した本です。つまり、データ取得、読み込み、前処理、可視化、レポーティングといったどんな分析をするにも必ず通るであろうプロセスを解説した本になります。自分の携わる分野、実務かアカデミックかに関係なく楽しんでいただけると思います。

豪華な執筆陣

この記事を書いていて、なおかつ一番ページ数が多い自分が全く豪華でないところが申し訳ないところですが、本書の3-5章は「この内容ならこの人しかいないよね」という人物が書いています。R勉強会やWeb上で多くの記事を発信し、時にはパッケージの開発動向まで追ってしまうような 変態な 頼もしい方々です。

では自分はどうなのかと言うと、私はどちらかというとバランスタイプ、スマブラで言うところのマリオみたいなタイプで、「幅広くカバーしている」感じです。なので、自分がRStudioとスクレイピングのプロフェッショナルかというとそうではないのですが、本書のコンセプトに足るくらいの知識は持っていて反映したつもりですので、どうぞ最初から最後まで読んでいただけると幸いです。

自分の章の紹介

とまあ本書の醍醐味はやはり3-5章なわけですが、私も頑張って2章分書きましたので紹介をさせていただきます。

1章 RStudio入門

文字通りRStudioの使い方を解説しています。先述の通りver1.1.423に沿ってコア機能・最新機能を紹介するとともに、自分好みにカスタマイズする方法も載せています。ですので、この章はどちらかというと辞書的に使っていただければなあと思います。

また、csvなどの外部ファイル読み込みもこの章で解説をしています。なぜここに入っているのかというのはページ数的な大人の事情ですのであまり気になさらず。この部分は自分が以前Tokyo.Rで発表した「ファイル読み込み特集」を意識しつつ、より分かりやすく説得力のあるように書きました。

初心者セッション 1 データ読み込み編

2章 スクレイピングによるデータ取得

Web上からデータをひっこぬく手法であるスクレイピングについて書きました。Rによるスクレイピングでは Rによるスクレイピング入門Rによる自動データ収集: Webスクレイピングとテキストマイニングの実践ガイドなど詳しく書かれた本がありあますが、分析フローを考える上では欠かせないということで本書に入っています。が、1章分しかページ数がないので当然既出書のように詳しくかけるはずもなく、ここだけはより焦点を絞った解説にとどめています。その分、Rでスクレイピングをするときに「何ができるか」「最低限どうすればいいのか」は分かりやすくまとまっていると思います。

さいごに

以上、簡単に書籍の紹介をしました。まだまだ言いたいことはたくさんあるのですが勉強会などでお伝えできればなと思います。正直このようなコンセプトの本は自分が以前から「こういう本があればなー」というものだっったので、本書に関われたことを大変光栄に思っています。

最後に、編集者のT氏のお力あってこその本書だと思います。このような機会をくださったT氏及び執筆者の皆様に厚く御礼申し上げます。

そして多くの方が本書を手に取って、データ分析の宇宙(verse)へ旅立てることを願っております。

Enjoy!!

2018.6.12 追記 この本で書いてないこと

以上のような豪華な本なのですが、この本では触れてないことがいくつかあります。

分析手法の解説

本書は「データ分析フロー」を解説した本ですが、肝心のモデリング本体の部分は一切触れていません。これは既に「Rによる〇〇分析」のような本がたくさんありそちらに詳細に書かれているのでそっちを見てねという意図によるものです。そのかわりどんな分析でも通過する箇所の解説を充実させることで、幅広い方の手元においていただける本になっております。

purrr, broom

ベクトルやリストを扱うときに大変便利で最近では使っている人もちらほら見かける、purrrやモデルをtidyに扱うbroomなどのtidyverseの「応用編」とも言うべきパッケージの解説はありません。もしそういうのを期待されて買うとがっかりしてしまうので予告しておきます

パッケージ開発、RStudio Server

RStudioの本なのでこれらは解説があるととても楽しいのですが、「データ分析フロー」の本流からは外れるということで書いてありません。

*1:このあたりの歴史については、本書の冒頭で触れられています