Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
tsibbleとtibbletimeの紹介
Search
t_usausausa
April 21, 2018
Technology
3.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
tsibbleとtibbletimeの紹介
第69回TokyoR LT資料
t_usausausa
April 21, 2018
More Decks by t_usausausa
See All by t_usausausa
Reticulate_and_RStudio.pdf
t_usausausa
0
670
Other Decks in Technology
See All in Technology
FPGAが実現する遠方宇宙の高空間分解能天体撮影 -大型地上望遠鏡の視力を補正する「補償光学」とは?-
komei_mt
0
160
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
210
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
240
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.1k
【CEDEC2026】『GRANBLUE FANTASY: Relink - Endless Ragnarok』のバトル制作事例 ~最高のキャラゲーを目指して~
cygames
PRO
0
220
Digitization部 紹介資料
sansan33
PRO
2
7.7k
AIコーディングの次。コードレビューと理解負荷を解消して組織の開発生産性を高める
moongift
PRO
2
2.2k
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
11
8.3k
第3回しろおびセキュリティスポンサーセッション
log0417
0
160
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
事業価値と Engineering 2026年度版
recruitengineers
PRO
42
22k
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
210
Featured
See All Featured
Google's AI Overviews - The New Search
badams
0
1.1k
Designing for Timeless Needs
cassininazir
1
430
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Optimising Largest Contentful Paint
csswizardry
37
3.9k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
460
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
610
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
630
Paper Plane (Part 1)
katiecoart
PRO
1
10k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Transcript
TSIBBLEと TIBBLETIMEの 紹介 第69回 TokyoR
自己紹介 ▪ twitter : @t_usausausa ▪ お仕事 : データアナリスト(高性能雑用係) ▪
言語 : R, Python, SQL
Dataframe型をts型に変換するのって めんどくさくないですか???
▪ Dataframe型からts型に変換したいモチベーション – ARIMAなどの時系列分析がしたい ▪ prophet, AnomalyDetectionでのお手軽時系列分析や rstanを使った状態空間モデルの話は置いておく – dygraphsでグリグリ動く時系列プロットがしたい
▪ いにしえの手法だと以下の通り – zoo型で読み込んでxts型に変換してマエショリし てts型に直して… – 正直やってられない – tidyな世界に生きたい
tidyな世界…つまりtidyverse!!! tibble型を継承した時系列の型があれ ば…
と思っていたらほぼ同時期に2個登場 した ◆tsibble ◆tibbletime
tsibble tibbletime 作者 Earo Wang [aut, cre], Di Cook [aut,
ths], Rob Hyndman [aut, ths] Davis Vaughan [aut, cre], Matt Dancho [aut] リリース時期 (0.1.0) 2018-01-09 2018-01-03 現在のバージョン 0.1.5 0.1.1 CRAN https://cran.r- project.org/web/packages/tsib ble/index.html https://cran.r- project.org/web/packages/tibb letime/index.html 独自クラスの型 tbl_ts tbl_time
tsibble tibbletime 独自クラスへの変換 ◦ ちょっとコツあり ◦ 欠損値補完 ◦ × %>%を使った集計処理
◦ ◦ ウィンドウを使った処理 ◦ ◦ 時間のフィルタリング ◦ ◦ 独自クラスから ts型への変換 ◦ × 機能面ではややtsibbleが優勢? だが前処理関連はtibbletimeに便利なものが揃っている
▪ ではtsibbleでdataframeからtsibble型を生成し、ts型 に変換してみます – tibbletimeは時間がないので割愛します
このような形式のdataframe型のデータを用意
tsibble型はindexの重複が許されない keyとindexでユニークかつ、keyを指定する必要がある
None
keyの指定があれば自動的に横持ちに変換してくれる
▪ 個人的にハマったところ – as.tsで変換できない ▪ tsibble型のindexの間隔が指定されていないと変換 できない
ここにindexの間隔が表示される (自動的に算出される)
自動的に算出できないと… よくわからないエラーで変換が できない
▪ 個人的にハマったところ ▪ tidyr::spreadで展開すると出力がおかしくなる…? – tsibble用のtidyrの関数が用意されていない – tibbletime用のtidyr関数は用意されている
▪ じゃあどっちを使えばいいのか、という話 – 結論としては用途で変えるべき – ts型に変換する場合はtsibble – 独自クラスで前処理やりたいならtibbletime
▪ tsibbleの作者いわく… ▪ (意訳) それぞれ別の目的で作ったのだから、2個あって もいいやん。将来的には1つにするのがベストなのかも しれないけど。
▪ 参考文献 – tsibble? or tibbletime?
enjoy!!!