Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Tidyverseとは

13,509 views

Published on

Japan.R 2016での発表資料です。

Published in: Engineering

Tidyverseとは

  1. 1. PPAP(仮) 2016/11/27 Japan.R 2016 @yutannihilation 1
  2. 2. ドーモ。 @yutannihilation • SRE • 電子工作(したいと言い続 けているだけの人) • 好きな言語:R、忍殺語 2
  3. 3. CRANにパッケージを公開しています。 •estatapi: e-Stat API •kokudosuuchi: 国土数値情報API •qiitr: Qiita API •kntnr: kintone API 3
  4. 4. 4 LTのネタが 思いつかないので PPAPの話をします。
  5. 5. 5 PPAPに込められた 本当の意味を 知っていますか?
  6. 6. 6 「私が歌っているテーマは 世界平和、家族、友人、 従弟、はとこへの愛。 そして宇宙物質 ダークマターの存在」 (https://youtu.be/PT46skLErz4?t=25m30s)
  7. 7. 7 「私が歌っているテーマは 世界平和、家族、友人、 従弟、はとこへの愛。 そして宇宙物質 ダークマターの存在」 (https://youtu.be/PT46skLErz4?t=25m30s)
  8. 8. 8 宇宙の話をします。
  9. 9. 9 宇宙といえば あれですね。
  10. 10. 10 hadleyverse
  11. 11. 11 hadleyverse
  12. 12. 12 tidyverse
  13. 13. tidyverseとは? •R界のネ申・Hadley Wickhamが作ったパッ ケージを中心とするツール群 •「tidy」は「きれいな」「整然とした」みた いな意味。 •用例:tidy data 13
  14. 14. あわせて読みたい: •手を動かしながら学ぶモダンなデータ操作 とtidyなデータ(2015年版) 14
  15. 15. tidyverseとは? tidyなデータをつくるためのツール tidyなインターフェースを目指す パッケージの集合 15
  16. 16. tidyverse 1.0.0 •今年9月に爆誕 •install.packages("tidyverse")で全パッケージ を一気にインストール。 •library("tidyverse")で主なパッケージを一気 に読み込み。 16
  17. 17. マニフェスト 17(https://cran.r-project.org/web/packages/tidyverse/vignettes/manifesto.html)
  18. 18. The tidy tools manifesto 1. Reuse existing data structures. 2. Compose simple functions with the pipe. 3. Embrace functional programming. 4. Design for humans. 18 tidyなデータをつくって使いましょう。 %>%を使いましょう。 関数型プログラミング脳になりましょう。 人間にわかりやすい設計にしましょう
  19. 19. tidyverseのパッケージ: データ読み込み •readr: CSV, TSVファイル •readxl: Excelファイル •haven: SPSS, SAS, Stataのデータ •httr,rvest: ウェブAPI、ウェブページ •xml2: XMLファイル •jsonlite: JSONファイル •DBI: データベース 19
  20. 20. tidyverseのパッケージ: データ前処理、変形 •tibble: data.frameを扱いやすくする •tidyr: データをtidyにする •dplyr: データを変形する •forcats: factorを扱いやすくする •lubridate, hms: 時刻型を扱いやすくする •stringr: 文字列を扱いやすくする 20
  21. 21. tidyverseのパッケージ: 可視化、FP、モデリング •ggplot2: 可視化 •purrr: 関数型プログラミング •lazyeval: 非標準評価(NSE) •magrittr: %>% •modelr: モデリング •broom: モデルをtidyに 21
  22. 22. tidyverseの歌 (めざせポケモンマスター!の替え歌) 22 ※swirlの中の人らしいです。
  23. 23. まとめ •今年はhadleyverseがtidyverseに進化した年だっ た。 •tidyverseは、tidyなデータにとどまらず「tidyな デザイン」を確立しようとしている •tidyverseはこれまでHadleyが築き上げてきたも のの集大成。もうバージョン1.0だし安定してい るはず。 •いやーさすが羽鳥! これでR界も安泰ですね。23
  24. 24. もう一度、神のありがたい言葉を読 んでみる。 24(https://cran.r-project.org/web/packages/tidyverse/vignettes/manifesto.html)
  25. 25. 25 "Currently no packages precisely meet the design goals, and while the underlying ideas are stable, I expect their expression in prose will change substantially as I struggle to make explicit my process and thinking." 超意訳:その変身をあとn回もオレは残している... その意味がわかるな?
  26. 26. 26 その意味が わかるな?
  27. 27. まとめ •今年はhadleyverseがtidyverseに進化した年だっ た。 •tidyverseは、tidyなデータにとどまらず「tidyな デザイン」を確立しようとしている •tidyverseはこれまでHadleyが築き上げてきたも のの集大成。もうバージョン1.0だし安定してい るはず。 •備えよう。 27
  28. 28. 参考:背景画像の出典 • Supernova SN1987A in the Large Magellanic Cloud https://www.flickr.com/photos/nasacommons/94580137 89 • Image from page 174 of "A high-school astronomy: in which the descriptive, physical, and practical are combined .." (1859) https://www.flickr.com/photos/internetarchivebookimage s/14784086233 28

×