SlideShare a Scribd company logo
1 of 28
PPAP(仮)
2016/11/27 Japan.R 2016
@yutannihilation
1
ドーモ。
@yutannihilation
• SRE
• 電子工作(したいと言い続
けているだけの人)
• 好きな言語:R、忍殺語
2
CRANにパッケージを公開しています。
•estatapi: e-Stat API
•kokudosuuchi: 国土数値情報API
•qiitr: Qiita API
•kntnr: kintone API
3
4
LTのネタが
思いつかないので
PPAPの話をします。
5
PPAPに込められた
本当の意味を
知っていますか?
6
「私が歌っているテーマは
世界平和、家族、友人、
従弟、はとこへの愛。
そして宇宙物質
ダークマターの存在」
(https://youtu.be/PT46skLErz4?t=25m30s)
7
「私が歌っているテーマは
世界平和、家族、友人、
従弟、はとこへの愛。
そして宇宙物質
ダークマターの存在」
(https://youtu.be/PT46skLErz4?t=25m30s)
8
宇宙の話をします。
9
宇宙といえば
あれですね。
10
hadleyverse
11
hadleyverse
12
tidyverse
tidyverseとは?
•R界のネ申・Hadley Wickhamが作ったパッ
ケージを中心とするツール群
•「tidy」は「きれいな」「整然とした」みた
いな意味。
•用例:tidy data
13
あわせて読みたい:
•手を動かしながら学ぶモダンなデータ操作
とtidyなデータ(2015年版)
14
tidyverseとは?
tidyなデータをつくるためのツール
tidyなインターフェースを目指す
パッケージの集合
15
tidyverse 1.0.0
•今年9月に爆誕
•install.packages("tidyverse")で全パッケージ
を一気にインストール。
•library("tidyverse")で主なパッケージを一気
に読み込み。
16
マニフェスト
17(https://cran.r-project.org/web/packages/tidyverse/vignettes/manifesto.html)
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なデータをつくって使いましょう。
%>%を使いましょう。
関数型プログラミング脳になりましょう。
人間にわかりやすい設計にしましょう
tidyverseのパッケージ:
データ読み込み
•readr: CSV, TSVファイル
•readxl: Excelファイル
•haven: SPSS, SAS, Stataのデータ
•httr,rvest: ウェブAPI、ウェブページ
•xml2: XMLファイル
•jsonlite: JSONファイル
•DBI: データベース
19
tidyverseのパッケージ:
データ前処理、変形
•tibble: data.frameを扱いやすくする
•tidyr: データをtidyにする
•dplyr: データを変形する
•forcats: factorを扱いやすくする
•lubridate, hms: 時刻型を扱いやすくする
•stringr: 文字列を扱いやすくする
20
tidyverseのパッケージ:
可視化、FP、モデリング
•ggplot2: 可視化
•purrr: 関数型プログラミング
•lazyeval: 非標準評価(NSE)
•magrittr: %>%
•modelr: モデリング
•broom: モデルをtidyに
21
tidyverseの歌
(めざせポケモンマスター!の替え歌)
22
※swirlの中の人らしいです。
まとめ
•今年はhadleyverseがtidyverseに進化した年だっ
た。
•tidyverseは、tidyなデータにとどまらず「tidyな
デザイン」を確立しようとしている
•tidyverseはこれまでHadleyが築き上げてきたも
のの集大成。もうバージョン1.0だし安定してい
るはず。
•いやーさすが羽鳥! これでR界も安泰ですね。23
もう一度、神のありがたい言葉を読
んでみる。
24(https://cran.r-project.org/web/packages/tidyverse/vignettes/manifesto.html)
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
その意味が
わかるな?
まとめ
•今年はhadleyverseがtidyverseに進化した年だっ
た。
•tidyverseは、tidyなデータにとどまらず「tidyな
デザイン」を確立しようとしている
•tidyverseはこれまでHadleyが築き上げてきたも
のの集大成。もうバージョン1.0だし安定してい
るはず。
•備えよう。 27
参考:背景画像の出典
• 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

More Related Content

More from yutannihilation

匿名バイナリ配布集団rwinlib
匿名バイナリ配布集団rwinlib匿名バイナリ配布集団rwinlib
匿名バイナリ配布集団rwinlibyutannihilation
 
dplyrとは何だったのか
dplyrとは何だったのかdplyrとは何だったのか
dplyrとは何だったのかyutannihilation
 
ggplot2再入門(2015年バージョン)
ggplot2再入門(2015年バージョン)ggplot2再入門(2015年バージョン)
ggplot2再入門(2015年バージョン)yutannihilation
 
押してダメなら引いてみろ! ggplot2逆引きプロジェクト
押してダメなら引いてみろ! ggplot2逆引きプロジェクト押してダメなら引いてみろ! ggplot2逆引きプロジェクト
押してダメなら引いてみろ! ggplot2逆引きプロジェクトyutannihilation
 
Github pagesでRPubsにサヨナラ!
Github pagesでRPubsにサヨナラ!Github pagesでRPubsにサヨナラ!
Github pagesでRPubsにサヨナラ!yutannihilation
 

More from yutannihilation (6)

匿名バイナリ配布集団rwinlib
匿名バイナリ配布集団rwinlib匿名バイナリ配布集団rwinlib
匿名バイナリ配布集団rwinlib
 
go-apt-cacher/mirror
go-apt-cacher/mirrorgo-apt-cacher/mirror
go-apt-cacher/mirror
 
dplyrとは何だったのか
dplyrとは何だったのかdplyrとは何だったのか
dplyrとは何だったのか
 
ggplot2再入門(2015年バージョン)
ggplot2再入門(2015年バージョン)ggplot2再入門(2015年バージョン)
ggplot2再入門(2015年バージョン)
 
押してダメなら引いてみろ! ggplot2逆引きプロジェクト
押してダメなら引いてみろ! ggplot2逆引きプロジェクト押してダメなら引いてみろ! ggplot2逆引きプロジェクト
押してダメなら引いてみろ! ggplot2逆引きプロジェクト
 
Github pagesでRPubsにサヨナラ!
Github pagesでRPubsにサヨナラ!Github pagesでRPubsにサヨナラ!
Github pagesでRPubsにサヨナラ!
 

Tidyverseとは