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
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Das...
Search
Shinichi Nakagawa
September 28, 2024
Programming
2
1.1k
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Dash for Python and Baseball
PyCon JP 2024 9/28 Talk Session 発表資料
Shinichi Nakagawa
September 28, 2024
Tweet
Share
More Decks by Shinichi Nakagawa
See All by Shinichi Nakagawa
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
2
2.8k
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
10
2.8k
自らを強いエンジニアにするための3つの習慣 / I need to be myself, I can't be no one else
shinyorke
77
58k
阪神タイガース優勝のひみつ - Pythonでシュッと調べた件 / SABRmetrics for Python
shinyorke
1
1.3k
Pythonとクラウドと野球の推し活. / Baseball Data Platform for Python and Google Cloud
shinyorke
2
2.7k
月額コーヒー3.34杯分のコストでオオタニサンの活躍を見守るデータ基盤のはなし / Pyhack Con
shinyorke
2
450
俺のDXを実現するためのサーバレスなデータ基盤開発と運用 / Serverless Data Platform and Baseball
shinyorke
5
11k
機械学習エンジニアが目指すキャリアパスとその実話 / My Journey to Become a ML Engineer
shinyorke
9
16k
一人でも小さく始められるGoogle Cloudで実現するほぼサーバレスなデータ基盤 / Serverless Dataplatform for Google Cloud
shinyorke
0
530
Other Decks in Programming
See All in Programming
Hotwire or React? ~アフタートーク・本編に含めなかった話~ / Hotwire or React? after talk
harunatsujita
1
110
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
4
540
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
570
Tuning GraphQL on Rails
pyama86
2
1.2k
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
270
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
170
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
400
Amazon Qを使ってIaCを触ろう!
maruto
0
370
[PyCon Korea 2024 Keynote] 커뮤니티와 파이썬, 그리고 우리
beomi
0
120
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
3
430
イベント駆動で成長して委員会
happymana
1
260
Click-free releases & the making of a CLI app
oheyadam
2
100
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Producing Creativity
orderedlist
PRO
341
39k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Language of Interfaces
destraynor
154
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.5k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
404
65k
Visualization
eitanlees
145
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Transcript
࣮ફDash🐍 खΛൈ͖ͳ͕ΒຊؾͰ࡞ΔσʔλApplicationͷجຊͱԠ༻ Shinichi Nakagawa(@shinyorke) 2024/09/28
໔ࣄ߲ • ຊηογϣϯࢲʢத৳Ұʣݸਓͷܦݧɾҙݟʹجͮ͘ݟղͰ͢. • ॴଐ৫ɾاۀɾஂମΛද͢ΔൃݴɾҙݟͰ͍͟͝·ͤΜ. • ॴଐ৫ɾاۀ͓ΑͼͦͷεςʔΫϗϧμʔʹର͢Δ࣭͝, ͝ҙݟ, ͍߹Θ͓ͤΑͼۀ༰ʹҰ͓͑͢Δ͜ͱͰ͖·ͤΜ. •
ίϯςϯπࣗ࡞͘͠ʮ͍Β͢ͱʯ͕େͰ͕͢ඞཁͳϞϊʹ ͍ͭͯग़యΛ໌ه͍ͯ͠·͢.
TL;DRʢ͜ͷͷμΠδΣετʣ • ʢ͍͍ײ͡ʹखΛൈ͍ͯʣָʹΞϓϦ࡞ΔͳΒDash͍͍ͱࢥ͏. • ؤுͬͯԠ༻ޮ͔ͤͨΒ, ൺֱతେ͖ΊͷΞϓϦ࡞Εͯ͠·͏. • Low-codeΛબͿ࣌ଞͷखஈߟ͑Δͷ͕٢, ։ൃׂͬͯͱΩπ͍.
ࣗݾհ • Shinichi Nakagawa(@shinyorke) • ӳޠ͕ۤखͳҎ֎, ׂͱԿͰͰ͖ΔΤϯδχΞΛੜۀͱ͠ ͨԿ͔ͷਓʢݱࡏେख֎ࢿITίϯαϧاۀͰSREʣ. • ٿσʔλੳͱΤϯδχΞϦϯά,
ࠓങͬͪΌͬͨϚΠ ϗʔϜʹ໋Λ͔͚͍ͯΔਓ. • Python, Cloud, Data Science, SRE, Agile͋ͨΓ͕ಘҙ. • Google Cloud Partner Top Engineer 2024ड. • ਪ͠ຊϋϜϑΝΠλʔζͱສதਖ਼, MLBશൠ⚾ • ΦΦλχ͞Μ͕45-45ΛܾΊͨʹ45ࡀʹͳΓ·ͨ͠. ※Developers Boost 2023ొஃ࣌ͷࣸਅʢ2023/12ʣ
͜ͷൃදΛݟͯ΄͍͠ɾௌ͍ͯ΄͍͠ਓ • DashStreamlitͳͲʮLow-codeʯͳPython Framework͕ؾʹͳΔਓ. • DashΛ͍ͬͯΔ, ໊લ͍ͬͯΔ͚ͲԿʹͬͨΒ🤔తͳ͕ٙ͋Δਓ. • Web Application։ൃʹඞཁͳࣝͱܦݧ͕͋Δ.
• ʲඞਢʳDjangoFlask, Fast APIͰ࡞ͬͨ͜ͱ͋Δͥ. • ʲͰ͖ΕʳAWSGoogle CloudͳΜ͔Ͱެ։ͨ͠ࣄ͋Δͥ. • ʢੈքҰ༗໊ͳʣΦΦλχαϯ͕Կऀ͔͍ͬͯΔํ⚾ ※ωλͰొ͠·͢
Dashͱ🤔
ʲʳָʹσʔλͷՄࢹԽΛ͢ΔFramework • Low-codeͳWeb FrameworkͰ, σʔλͷՄࢹԽʹશৼΓ͍ͯ͠Δ. • Python൛Flask͕ϕʔε. FlaskͰ͑Δͷ͍͍ͩͨ͑Δ. • OSS൛ͱEnterprise൛͕ଘࡏ.
ͳ͓ຊτʔΫͯ͢OSS൛ͷ. ※ग़య: https://dash.plotly.com/
DashΛಋೖ͢Δ
DashΞϓϦΛಈ͔͢
͓͠ͳ͕͖ - جຊ͔ΒԠ༻, ࣮ફ·Ͱ⚾ • Dashͷجຊ - ͱΓ͋͑ͣ࡞ͬͯಈ͔͢ • DashͷԠ༻
- ࣄͰ͏, ެ։͢Δ • ࣮ફฤʮϝδϟʔϦʔάσʔλͷՄࢹԽͱੳͷDXԽʯ • ࣅͨऀಉ࢜ͰൺͯΈΔ - StreamlitͱԿ͕ҧ͏ͷ͔ʁ
Dashͷجຊ - ͱΓ͋͑ͣ࡞ͬͯಈ͔͢
DashͷجຊʢԿނʮखൈ͖ʯͳͷ͔ʣ • Hello Worldʢ෩ʣʹԿ͔Λ࡞Δ • σʔλΛՄࢹԽ͢Δ • callbackͱྑ͘ͳΔ
Hello Worldʢ෩ʣʹԿ͔Λ࡞Δ • 1ϑΝΠϧʢapp.pyʣͰಈ͔͢ΞϓϦΛ൸࿐͠·͢. • CSVσʔλΛΤΠοͱՄࢹԽʢpandasͰಡΜͰplotlyͰՄࢹԽʣ. • ʢDashͰආ͚ͯ௨Εͳ͍ʣcallbackΛ͏. • ϓϧμϯͰબखΛબͨ͠ΒϗʔϜϥϯͷ͕ग़ΔΞϓϦͰ͢.
• σʔλ http://seanlahman.com/ ͔ΒMLBͷଧܸσʔλΛར༻.
Hello Worldʢ෩ʣͷsample
Hello Worldʢ෩ʣͷsample
σʔλΛՄࢹԽ • pandasͷDataframeΛ࡞Δ • PlotlyͷΦϒδΣΫτΛ࡞Δ • ϖʔδʹຒΊࠐΉ͔, callbackͰ͍͍ײ͡ʹϋϝΔ
Dash࠷ॳͷਏΈʮcallbackʯ
Callbackͷجຊ • @callbackσίϨʔλͰ࣮. • OutputͰग़ྗઌ, InputͰೖྗΛࢦఆ. Ͳ ͪΒෳࢦఆՄʢ1…nݸͷInputͰ, 1…nݸͷOutput͕Մೳʣ •
Dashͷϑϩϯτ෦ReactͳͷͰ, React͍ͷਓʹͱ͖͍͔ͬͭ͢.
CallbackΛ੍͢Δऀ͕DashΛ੍͢Δ • DashͷΞϓϦ։ൃͷ͕callbackͳͷͰઆʢҟೝΊΔʣ • Կ͔͠ΒͷΠϕϯτʢ=ೖྗʣͰඞཁͳσʔλʢ=ग़ྗʣΛಘΔͷ͕ ΞϓϦέʔγϣϯͳͷͰવͱݴ͑વ. • DashͷcallbackײతͰΈ͍͢Ұํ, Γ͗͢ΔͱΞϓϦ͕ෳ ࡶʹͳͬͨΓ,
ඳըͳͲͷύϑΥʔϚϯεʹӨڹग़ΔͷͰҙ.
DashͰ࣮ݱ͢Δ ʮखൈ͖ʯײ • ͪΐͬͱPythonΛͬͯॻ͚ΕԿ ͔͠ΒͷσʔλՄࢹԽΛͰ͖Δͷ͕ DashͷڧΈʢݸਓతͳݟղʣ. • HTMLJSΛॻ͔ͳͯ͘, pandas plotlyͷίϯϙʔωϯτΛదʹ
ಥͬࠐΜͰ࡞ΕΔʮखൈ͖ײʯૉ Β͍͠ͱࢥ͏.
DashͷԠ༻ - ࣄͰ͏, ެ։͢Δ
DashͷԠ༻ʢ͘͠ʮຊؾʯͷ෦ʣ • σʔλͷऔΓѻ͍ͱScope • ೝূೝՄΛ࣮͢Δ • ΫϥυʹσϓϩΠ͢Δʢੈͷதʹެ։͢Δʣ
σʔλͷऔΓѻ͍ͱScope • DashStatelessͳWeb Framework. σʔλอ࣋ͯ͘͠Ε·ͤΜ. • Pythonͷݴޠ༷తʹ, ʮGlobalʯʮLocalʯͷScopeͰઓ͏͜ͱʹ. • Global
Scope: GlobalͳมͰͷอ࣋. ىಈ࣌ʹऔಘ. • Local Scope: ؔͰͷอ࣋. DashͰcallbackͰݺͼग़͠. • Ͳ͏ͯ͠σʔλอ͍࣋ͨ࣌͠http session֎෦ετϨʔδʹཔΔ.
Global ScopeͱLocal ScopeʢPythonͷʣ.
ೝূೝՄΛ࣮͢Δ • OSS൛Dashͱͯ͠BasicೝূͷΈରԠ. • Basicೝূ͕NGͷ߹, ҎԼͰରԠʢ͓ۚΛ͏͔໘ͳࣄΛ͢Δ͔ʣ. • Enterprise൛DashͩͱLDAP, SAML, OIDC͕ར༻Մೳ💰
• DashͷݩFlaskͳͷͰࣗͰ࣮͢ΔʢԞͷखͱͯ͠ʣ ※ʮࣗͰ࣮ʯ͔ͳΓͷϦεΫ͕͋ΔͷͰࣗݾͰ͓ئ͍͠·͢.
DashͰೝূೝՄΛ͏ʢdash-auth͕ඞཁʣ
DashͰೝূೝՄΛ͏ʢίʔυʣ
DashʢʹݶΒͣWebΞϓϦશൠʣͷਏΈʮσϓϩΠͲ͏͢Δʯ
ΫϥυʹσϓϩΠ͢Δʢ=ެ։͢Δʣ • DockerͰContainer Imageͱͯ͠ѻ͏ͷ͕ϕετʢී௨ͷWebΞϓϦಉ༷ʣ. • ࠷ޙʹग़͢ઌ͕AWS, Google Cloud, AzureͳͲͷΫϥυͳΒͳ͓ͷ͜ͱ. •
ϩʔΧϧͰ࡞ͬͨDashΞϓϦΛͦͷ··Ͱग़ͤͳ͍ͷͰͪΐͬͱ͢Δ. 1.Application ServerΛProduction༻ͷͷʹ͢Δ. 2.Docker Imageͱͯ͠Build͢Δ. 3.ΫϥυʹσϓϩΠ͢Δ.
Productionʢຊ൪ʣӡ༻ͷͨΊʹखೖΕ͢Δ • ։ൃ༻ͷapp.runͰͳ͘, Production༻ͷαʔόʔΛ͏. • ۩ମతʹFlaskͰΑ͘͏gunicornͳͲΛ͏. • ެࣜͷࣄྫgunicorn https://dash.plotly.com/deployment
gunicornΛ͏ • ίʔυʹ1ߦՃ. • gunicornΛೖΕͯಈ͔͢. • ͜ͷลFlaskͱશ͘ಉ͡.
DockerΛ͏ • PythonͷWebΞϓϦͱͯ͠ Dockerʹ·ͱΊΔ. • ͜ͷลଞͷWeb Framework ͱΓํมΘΒͣ. • ίʔυαϯϓϧ͋͘·ͰҰྫ.
σϓϩΠ͢Δ (Google Cloud) • ΞϓϦΛಈ͔͢ڥʹՃ͑ͯ, Dockerͷ RegistryͱBuildͷखஈΛ༻ҙ. • Google Cloudͷ߹,
ʮCloud Runʯ ʮArtifact RegistryʯʮCloud BuildʯͰ ࣮ݱՄೳ. • AWSͳͲ, ଞͷΫϥυͰࣅͨײ͡ʹ ͳΓ·͢.
࣮ફฤʮϝδϟʔϦʔάσʔλͷՄࢹԽͱੳͷDXԽʯ
࣮ફྫʮMLBσʔλͷՄࢹԽͱੳʯͷDXԽ • ٿσʔλੳDXͷҝʹʮϚϧνϖʔδʯͳDashΞϓϦΛߏங • ੳྫͦͷᶃʮ࠷͍ଧٿͱٿʯ • ੳྫͦͷᶄʮ50-50Λͬͨ͋ͷํʯ
ʲ͓ʳϝδϟʔϦʔά⚾ͷΦϨΦϨDXԽ • ʮϝδϟʔͷϠό͍બखΛγϡοͱੳͰ͖ΔΑ͏ͳσʔλՄࢹԽʯι ϦϡʔγϣϯΛ2022͔Βӡ༻͍ͯ͠·͢ʢݸਓͰʣ. • MLBެࣜͷϏοάσʔλʮStatcastʯͰΦΦλχαϯΛ͡Ίͱͨͯ͢͠ ͷϓϨʔϠʔͷओཁͳσʔλ͕खʹೖΓ·͢ʢ2010Ҏ߱ʣ • γεςϜσʔλՄࢹԽΞϓϦʢDashଞʣͱσʔλج൫ʢBigQueryଞʣͰ ߏங,
ޙऀͷσʔλऩूɾूܭͷج൫PyCon JP 2022, σϒαϛͰࣄྫ ൃද͍ͯ͠ΔͷͰͦͪΒΛ͝ཡ͋Ε.
ʲࢀߟʳPyCon JP 2022ʮPython͍ͷͨΊͷεϙʔπσʔλղੳͷ͖΄Μʯ࣌ͷ࡞. ※࣌ج൫ʢPySpark/DataprocʣͷϝΠϯͰDashҰ͍ͯ͠ͳ͍. શମΞʔΩ 2022࣌ͷDashΞϓϦʢSPAʣ
2024ʹΓ͔ͨͬͨ͜ͱ
ؾʹͳΔϝδϟʔϦʔΨʔͷσʔλΛγϡοͱோΊ͍ͨ. ۩ମతʹʮͰιʔτʯͯ͠બखͷϖʔδʹϦϯΫͯ͠දࣔ. Ͱιʔτͨ͠Topը໘ Topը໘͔ΒͷϦϯΫͰදࣔ
͜ΜͳαΠτϚοϓͰ࣮͍͕ͨ͠…SPAͰແཧ.
ʲDashͷ࣮ફʳMPAʢMulti Page Applicationʣ • DashSPA͚ͩͰͳ͘, ෳϖʔδʢMPAʣͷΞϓϦ͕࣮Մೳ. • SPA͡Ό͍͠ΞϓϦΛMPAʹ࡞Γม͑Δͷൺֱత༰қʹՄೳ. • URLݻఆϖʔδʹՃ͑ͯ,
URLύλʔϯͰಈతϖʔδʹ͢Δ͜ͱՄೳ. • ؤுΕDash͚ͩͰ͋ΔఔͷWebαΠτ࡞Εͯ͠·͏. • ͳ͓, DashStatelessͳFrameworkͰσʔλΛ࣋ͨͳ͍ҝ, ϖʔδΛލ͙ σʔλ࿈ܞΦεεϝ͠·ͤΜʢΔͷ૬ΩπΠͱࢥΘΕΔʣ.
MPAΛ࣮͢Δʢงғؾʣ ※MPAͷ۩ମతͳ࣮ղઆެࣜ https://dash.plotly.com/urls Λ͝ཡ͍ͩ͘͞.
࣮ࡍʹͬͯΈͨ⚾
Statcast ʢ&ࢲʣ͕ਪ͢ ʮମೳྗ͓Խ͚ͳօ༷ʯ • ଧٿ͕ਓؒͱࢥ͑ͳ͍. • ࠷͍ϘʔϧΛ͛ͨਓ. • 50-50? ※σʔλ20249݄27ʢຊ࣌ؒʣ࣌ͷͷ.
※ʢؔͳ͍͚ͲʣϋϜCSਐग़ඇৗʹΊͰ͍ͨ🎉
ΦχʔϧɾΫϧʔζ ʢ2024ଧٿ࠷Ԧʣ • 5/21ʹ2024ͷMLB࠷ͱͳΔ, 195.53 km/h ͷೋྥଧΛه • ϐοπόʔΫɾύΠϨʔζॴଐ, 25ࡀͷएख
γϣʔτ݉ηϯλʔ • ଧܸͦͦ͜͜ྑͦ͞͏ͳͷͷ, कඋࢦ ඪ͕ѱ͘ѻ͍ʹࠔΓͦ͏ͳ༧ײ. • ͪͳΈʹΦΦλχαϯࠓγʔζϯ191.83km/ hͷ୯ଧΛه͍ͯ͠Δ.
ΞϩϧσΟεɾνϟοϓϚϯ ʢπʔγʔϜ࠷Ԧʣ • 8/7ʹ2024ͷMLB࠷ͱͳΔ, 172.36 km/hͷπʔ γʔϜʢsinker, ಈ͘ਅ͙ͬͷ͜ͱʣΛه • ͜ͷϘʔϧͷ݁Ռݟಀ͠ετϥΠΫ.
• ޚࡀ36ࡀͳ͕Β, ͣͬͱMLBͷ࠷Ԧʹ܅ྟ͠ଓ͚ Δਓྨ࠷ࠨ. • ԿٿஂΓา͍ͯݱࡏϐοπόʔΫɾύΠϨʔ ζॴଐ. • Ͳ͏Ͱ͍͍͚ͲύΠϨʔπʹԦ͕ू·͍ͬͯΔ🤔
େ୩ᠳฏ ʢઆ໌লུʣ • ੌ͗ͯ͢Կ͔Βݴ͍͍͑ͷ͔😇 • ͔֬ͳͷଧٿ্͕ͬͯΔ, ͍ͬͯ͋ͨΓύϑΥʔϚϯ ε͕͍͢͝. •
དྷ, खΛͬͨΒͲΕ͚ͩͷ ύϑΥʔϚϯε͕ग़Δͷָ͔͠Έ.
ʮStreamlitͱͲ͕͍͍ͬͪͰ͔͢?ʯ ؾʹͳΓ·ͤΜ?
ͲͬͪPythonͷLow-codeͳFWͰࣅͨͷಉ࢜, ൺֱͪ͠Ό͍·ͤΜ? #ׂͱ͋Γ͕ͪͳ࣭ #͜Ε͕ฉ͖ͨͯ͘͜ͷτʔΫʹདྷͨΜͰ͠ΐ? #͠·͢Ͷ Streamlit ※PyCon JP 2021ൃදΑΓҾ༻ Dash
※ࠓճͷ࡞ʢ2024ʣ
ࢲʢshinyorkeʣͷݟղɹ˞ݸਓతͳײͰ͢ ؾʹͳΔϙΠϯτʢൺΔΞϨʣ %BTI 4USFBNMJU αΫοͱ࡞ͬͯެ։Ͱ͖Δ͔ ͋ΔఔϖʔδΛσβΠϯ͢Δඞཁ͋Δ ؾָʹ࡞ͬͯެ։͢Δײ͡Ͱͳ͍ ྑ͘ѱ͘ϨΠΞτ͕ܾ·Γ͍͢ ͷͰָ͘͢͝ʢ͍͡Δൣғগͳ͍ʣ
͔ͬ͠ΓσβΠϯͯ͠࡞ΕΔ͔ ίϯϙʔωϯτͷΈ߹Θͤ σβΠϯ ςʔϚΛ࡞͍͍ͬͯײ͡ʹ࡞ΕΔ 4USFBNMJUಛ༗ͷσβΠϯ͕ड͚ೖΕΒ Εͳ͍߹ ٧Ή ࣮ɾςετͷײ৮ ίϯϙʔωϯτ͓Αͼ$BMMCBDLͷςετ ࣮ʹۤ࿑͢Δ ίϯϙʔωϯτͷςετ֎෦ϥΠϒϥ ϦͰߦ͚Δςετʹۤ࿑ͦ͠͏ ͦΕͧΕͷݸੑɾಛ શൠతʹσʔλͷՄࢹԽʹڧ͍ ϚϧνϖʔδߏͰͷΞϓϦߏங͕Մೳ ೖग़ྗ͕සൟʹ͋Δ ΠϯλϥΫςΟϒ ͳΞϓϦͳΒ4USFBNMJU$IBU࡞ΕΔ
DashͱStreamlitʢͱଞͷαʔϏεʣ͍͚͕٢ • ಉ͡Low-code FrameworkͰతɾڧΈ͕ҧ͏ͷͰ͍͚Α͏. • άϥϑϏδϡΞϥΠθʔγϣϯΛΰϦοͱΔͳΒDash. • ChatFormͳͲͷΠϯλϥΫςΟϒͳΞϓϦStreamlit. • ͲͪΒʹͯ͠,
TableauLooker StudioͳͲͷαʔϏεͰ࣮ͤͣʹ ࡁΉͳΒͦΕʹӽͨ͜͠ͱແ͍ʢ্࣮ͷҙࢥܾఆͱͯ͠ʣ. • ͲΜͳLow-codeͰͪΌΜͱΖ͏ͱ͢ΔͱLow͡Όͳ͘ͳΔ(ry
Low-codeͰ։ൃൃੜ͢Δ, ߟ͑Δ͜ͱଟ͍ͷͰͦͷਏ͞ߟྀ͠·͠ΐ͏. मߦͱࢥͬͯॻ͍ͯΈΔͷѱ͘ͳ͍ͱࢥ͍·͕͢⚾
Wrap up
TL;DRʢ࠶ܝʣ • ʢ͍͍ײ͡ʹखΛൈ͍ͯʣָʹΞϓϦ࡞ΔͳΒDash͍͍ͱࢥ͏. • ؤுͬͯԠ༻ޮ͔ͤͨΒ, ൺֱతେ͖ΊͷΞϓϦ࡞Εͯ͠·͏. • Low-codeΛબͿ࣌ଞͷखஈߟ͑Δͷ͕٢, ։ൃׂͬͯͱΩπ͍.
զࢥ͏&ࠓޙͷల. • SoIʢSystem of InsightʣͳػೳΛDashͰΨνͰΉΞΠσΞ, զͳ͕Βྑ͍ ΞΠσΞͩͬͨ. ࡞Γͳ͕ΒՄࢹԽΞϓϦͷΞΠσΞ͕രͨ͠ͷͰ֓೦࣮ ূʢPoCʣతʹྑ͔ͬͨ. •
Ұํ, ͬͺTableauLooker StudioͳΜ͔ͰΊͨ΄͏ָ͕͍͍ͩ͠Αͳ ͱ…͜͜·ͰຊؾͰΞϓϦ࡞ΔͱେมͬͪΌେมʢೝূೝՄͱ͔໘ʣ. • ࠓޙͰ͕͢, ੜAIͰʮ͖͏AIʯͳΤʔδΣϯτ࡞ͬͯͦΕͱձ͢Δະདྷ Λݟਾ͍͑ͯ·͢, Streamlitͱ͔Ͱ͜Ε࣮ݧ͢ΔͷͰͳ͔Ζ͏͔স.
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠. Shinichi Nakagawa
ʲAppendixʳࢀߟจݙ • Dash Document https://dash.plotly.com/ • Baseball savant https://baseballsavant.mlb.com/ •
https://shinyorke.hatenablog.com/entry/baseball-data- transformation-2024 ※࠷ॳͷDash MPAࣄྫʢࣗͷϒϩάʣ