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
PRO
September 28, 2024
Programming
2
2.9k
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Dash for Python and Baseball
PyCon JP 2024 9/28 Talk Session 発表資料
Shinichi Nakagawa
PRO
September 28, 2024
Tweet
Share
More Decks by Shinichi Nakagawa
See All by Shinichi Nakagawa
AI・LLM事業部のSREとタスクの自動運転
shinyorke
PRO
0
400
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
PRO
2
3.2k
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
PRO
9
4k
自らを強いエンジニアにするための3つの習慣 / I need to be myself, I can't be no one else
shinyorke
PRO
82
85k
阪神タイガース優勝のひみつ - Pythonでシュッと調べた件 / SABRmetrics for Python
shinyorke
PRO
1
1.4k
Pythonとクラウドと野球の推し活. / Baseball Data Platform for Python and Google Cloud
shinyorke
PRO
2
2.9k
月額コーヒー3.34杯分のコストでオオタニサンの活躍を見守るデータ基盤のはなし / Pyhack Con
shinyorke
PRO
2
520
俺のDXを実現するためのサーバレスなデータ基盤開発と運用 / Serverless Data Platform and Baseball
shinyorke
PRO
5
12k
機械学習エンジニアが目指すキャリアパスとその実話 / My Journey to Become a ML Engineer
shinyorke
PRO
10
18k
Other Decks in Programming
See All in Programming
Create a website using Spatial Web
akkeylab
0
260
単体テストの始め方/作り方
toms74209200
0
430
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
760
複数アプリケーションを育てていくための共通化戦略
irof
10
3.8k
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
1
250
FormFlow - Build Stunning Multistep Forms
yceruto
1
160
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
350
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
210
生成AIで日々のエラー調査を進めたい
yuyaabo
0
520
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
130
GoのGenericsによるslice操作との付き合い方
syumai
2
490
ワンバイナリWebサービスのススメ
mackee
10
7.7k
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
690
Mobile First: as difficult as doing things right
swwweet
223
9.6k
GraphQLとの向き合い方2022年版
quramy
46
14k
Docker and Python
trallard
44
3.4k
Building an army of robots
kneath
306
45k
Unsuck your backbone
ammeep
671
58k
A Tale of Four Properties
chriscoyier
159
23k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
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ࣄྫʢࣗͷϒϩάʣ