SlideShare a Scribd company logo
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にサヨナラ!
 

Recently uploaded

【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する  CTO・VPoEに聞く by DIGGLE CTO 水上【登壇資料】スタートアップCTO経験からキャリアについて再考する  CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上mizukami4
 
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題についてMasatsugu Matsushita
 
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップToru Miyahara
 
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例Kurata Takeshi
 
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋  セミナー資料今さら聞けない人のためのDevOps超入門 OSC2024名古屋  セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料Toru Miyahara
 
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料Toru Miyahara
 

Recently uploaded (6)

【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する  CTO・VPoEに聞く by DIGGLE CTO 水上【登壇資料】スタートアップCTO経験からキャリアについて再考する  CTO・VPoEに聞く by DIGGLE CTO 水上
【登壇資料】スタートアップCTO経験からキャリアについて再考する CTO・VPoEに聞く by DIGGLE CTO 水上
 
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
本の感想共有会「データモデリングでドメインを駆動する」本が突きつける我々の課題について
 
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
 
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
人的資本経営のための地理情報インテリジェンス 作業パターン分析と心身状態把握に関する実証事例
 
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋  セミナー資料今さら聞けない人のためのDevOps超入門 OSC2024名古屋  セミナー資料
今さら聞けない人のためのDevOps超入門 OSC2024名古屋 セミナー資料
 
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
Linuxサーバー構築 学習のポイントと環境構築 OSC2024名古屋 セミナー資料
 

Tidyverseとは