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
Tableau + Pythonとデータのあり方
Search
Kazuya Araki
October 21, 2019
Technology
2
130
Tableau + Pythonとデータのあり方
Tableauデータサイエンス勉強会 第4回 - 画像認識技術とBIの巻-
登壇資料
https://techplay.jp/event/750555
Kazuya Araki
October 21, 2019
Tweet
Share
More Decks by Kazuya Araki
See All by Kazuya Araki
Tableau事例紹介 / Tableau Case Study of Eureka
kazuya_araki_tokyo
1
1k
Tableau事例紹介 & 課題共有
kazuya_araki_tokyo
1
1.9k
統計とは? @ICUHS
kazuya_araki_tokyo
0
300
License Management @BizReach, Inc.
kazuya_araki_tokyo
0
83
Art and Science of Visual Analytics Episode 0
kazuya_araki_tokyo
0
72
Art and Science of Visual Analytics Episode 1
kazuya_araki_tokyo
1
130
Art and Science of Visual Analytics Episode 2
kazuya_araki_tokyo
0
70
Art and Science of Visual Analytics Episode 3
kazuya_araki_tokyo
0
59
株式会社ビズリーチの紹介@Data Analyst Meetup Tokyo vol.8
kazuya_araki_tokyo
0
90
Other Decks in Technology
See All in Technology
Perlブートキャンプ
hatena
0
270
大規模プロダクトで実践するAI活用の仕組みづくり
k1tikurisu
4
1.6k
仕様は“書く”より“語る” - 分断を超えたチーム開発の実践 / 20251115 Naoki Takahashi
shift_evolve
PRO
1
1k
生成AIではじめるテスト駆動開発
puku0x
0
130
なぜブラウザで帳票を生成したいのか どのようにブラウザで帳票を生成するのか
yagisanreports
0
140
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
3
1k
やり方は一つだけじゃない、正解だけを目指さず寄り道やその先まで自分流に楽しむ趣味プログラミングの探求 2025-11-15 YAPC::Fukuoka
sugyan
2
840
"おまじない"はもう卒業! デバッガで探るSpring Bootの裏側と「学び方」の学び方
takeuchi_132917
0
180
グローバルなコンパウンド戦略を支えるモジュラーモノリスとドメイン駆動設計
kawauso
1
1.4k
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
660
レビュー負債を解消する ― CodeRabbitが支えるAI駆動開発
moongift
PRO
0
420
JavaScript パーサーに using 対応をする過程で与えたエコシステムへの影響
baseballyama
1
110
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Six Lessons from altMBA
skipperchong
29
4.1k
Automating Front-end Workflow
addyosmani
1371
200k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
24
1.6k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Done Done
chrislema
186
16k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
The Language of Interfaces
destraynor
162
25k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Building Adaptive Systems
keathley
44
2.8k
Transcript
Tableau + Pythonと データのあり方 Tableau データサイエンス勉強会第4回
About Me 荒木 和也 Kazuya Araki Knight of Tableau DATA
Saber 受託開発 -> パッケージ開発 -> 某HR Tech & 個人事業 Engineer -> Data Analyst / Data Enginieer / Data Archtect Love: Data Hobby: J-Rock, Snow Sports, PC Game, Board Game etc(100+) https://www.facebook.com/kazuya.araki.tokyo @kazuya_araki_jp https://note.mu/jedi_trickstar https://public.tableau.com/profile/kazuya.araki#!/
お話しすること 最近考えている、思っていることについて語ってみます。 (サイエンスよりは、エンジニアリングの与太話となります) • データとTableau(Desktop)の関係 • TableauとPython
お話ししないこと 10分では足りないので。 • PythonのHow • TabPyの細かい話(本当は語りたい)
データとTableau(Desktop)の関係
基本はETL(データパイプライン)の考え方
Tableau(Desktop)は優秀
優秀すぎるが故の罠
優秀すぎるが故の罠 例: 計算フィールド多すぎ問題 • 単純にパフォーマンスが劣化する。 • メジャーの視認性が悪くなる。 • メジャー名を正しく定義しないと使うときに困る。 •
計算式が正しくなかった場合のレビューがとても難しい。 ◦ レビュワーもCreatorユーザーでなければならない。 etc...
優秀すぎるが故の罠
優秀すぎるが故の罠 例: カスタムSQL • SQLが実行できるデータソースで発生しうる。 ◦ データマート構築が進んでいない場合。 ◦ サービズデータを無加工でデータウェアハウスに格納して いる場合。
◦ 総じて、データエンジニアリングが未熟なフェーズ。 • Tableau Desktopのウインドウだと視認性が良くない。 • SQLが正しくなかった場合のレビューがとても難しい。 ◦ レビュワーもCreatorユーザーでなければならない。 ◦ 計算フィールドと複合していると原因特定に詰む。 ◦ SQLを書いた本人ですらわからない場合もある。 etc... (フォーマッターかけて) 800行超あるSQL
気をつけないと痛い目を見る
構成を考えてみる🤔
最近の推しの構成
最近の推しの構成
役割分担と構成管理
データ加工とデータ可視化を分けた方がよさそう • データ加工 = SQL / Python / Tableau Prep
Builder ◦ GitHubでコードを管理する。 ▪ データ定義を残す。 ▪ 再現性を担保する(= 誰が使っても同じ結果になる保証)。 ◦ SQLはデータベース、SQLでできないことはPythonに任せる。 ◦ API系はPython。 ◦ Tableau Prepは可能性しかない。今後に期待。 ▪ ただし、Prep Conductorまで使うには別途追加料金が必要。 • データ可視化 = Tableau Desktop ◦ Tableau側はデータについて関与しない。 ◦ Tableauはデータ可視化にだけ、注力するようにする。
TableauとPython
Python IDEの構成 from あらき
TabPyの登場
Tableau内でPythonが記述可能に TabPy
リプレース可能? TabPy 🤔
一人Zen問答したメモ at 2019/10/01 • TabPyの位置付けは計算フィールドと変わらないので、データパイプライン を考えると、役割分担ができない。 • 一方で、TabPyは構築さえできてしまえばTableau内で完結するので、楽とい えば楽。 •
どちらが優れているかは現時点では判断できない。 • 少なくとも、2人以上が関わるようになった場合は、Tableau内であれこれや るよりも、ちゃんと思考開示して共有できるようにしないと属人化は進むだ ろう。 ◦ Citizen Data Scientists向け? ◦ Data Engineerをかかえている組織であれば、分業した方が効率は良い?
もう少し、ざっくばらんに 議論したいです ※背景画像はイメージです
まとめ • データとTableau(Desktop)の関係 ◦ データパイプラインを意識する = ツールに適した役割分担をする。 ◦ データ定義はTableau(Desktop)内で行うべきではない(のが個人的見解)。 ◦
なんでもTableau(Desktop)で解決しようとしない。 • TableauとPythonTabPy ◦ データパイプラインを意識すると、TabPyの導入意義が薄れてしまう(のが個人的見解)。 ◦ もう少し深掘りしていきたいです🙇
None