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
150
2
Share
Tableau + Pythonとデータのあり方
Tableauデータサイエンス勉強会 第4回 - 画像認識技術とBIの巻-
登壇資料
https://techplay.jp/event/750555
Kazuya Araki
October 21, 2019
More Decks by Kazuya Araki
See All by Kazuya Araki
Tableau事例紹介 / Tableau Case Study of Eureka
kazuya_araki_tokyo
1
1.1k
Tableau事例紹介 & 課題共有
kazuya_araki_tokyo
1
2.1k
統計とは? @ICUHS
kazuya_araki_tokyo
0
320
License Management @BizReach, Inc.
kazuya_araki_tokyo
0
110
Art and Science of Visual Analytics Episode 0
kazuya_araki_tokyo
0
96
Art and Science of Visual Analytics Episode 1
kazuya_araki_tokyo
1
160
Art and Science of Visual Analytics Episode 2
kazuya_araki_tokyo
0
84
Art and Science of Visual Analytics Episode 3
kazuya_araki_tokyo
0
72
株式会社ビズリーチの紹介@Data Analyst Meetup Tokyo vol.8
kazuya_araki_tokyo
0
110
Other Decks in Technology
See All in Technology
最新技術を"今は選ばない"という技術選定
leveragestech
PRO
0
340
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
2
160
TypeScriptで実現する既存APIを活用したリモートMCPサーバー構築 / TSKaigi 2026
soarteclab
1
170
AIAgentと取り組むKaggle
508shuto
2
470
JaSSTに関わることで変わった人生観 #jasstnano
makky_tyuyan
0
160
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
2
2.1k
TSKaigi 2026 - enumよ、さようなら
teamlab
PRO
2
250
インプロセスQAのための要因から捉えるプロジェクトリスクマネジメントnano #1 開発リソース効率状態への対処 #jasstnano
barus_qa
0
210
そのSLO 99.9%、本当に必要ですか? 〜優先度付きSLOによる責任共有の設計思想〜 / Is that 99.9% SLO really necessary? Design philosophy of shared responsibility through prioritized SLOs
vtryo
0
880
【禁断】Obsidianの第二の脳に「知の巨人」と呼ばれた師匠の脳をロードしてみた
nagatsu
0
2.1k
Claude Code で使える DuckDB Skills を試してみた / DuckDB Skills and Claude Code
masahirokawahara
1
1.9k
DI コンテナ自動生成ツールを実装してみた / intro-autodi
uhzz
0
720
Featured
See All Featured
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
200
Become a Pro
speakerdeck
PRO
31
5.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Building the Perfect Custom Keyboard
takai
2
770
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
54k
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