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
投球を可視化する技術〜Analyzing Pitching Data With Python
Search
Shinichi Nakagawa
PRO
March 22, 2016
Research
1.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
投球を可視化する技術〜Analyzing Pitching Data With Python
MLBの一球速報データを使った投球データの可視化をPython他でやってみました.
BPStudy #103 2016/3/22 発表資料
Shinichi Nakagawa
PRO
March 22, 2016
More Decks by Shinichi Nakagawa
See All by Shinichi Nakagawa
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
530
WBCの解説は生成AIにやらせよう - 生成AIで野球解説者AI Agentを実現する / Baseball Commentator AI Agent for Gemini
shinyorke
PRO
1
510
自らを強いエンジニアにするための3つの習慣 2025/ Fitter happier more productive
shinyorke
PRO
0
310
生成AI時代におけるSREの進化とキャリア戦略 / Building an Embedded SRE team and my career
shinyorke
PRO
0
180
生成AIを活用した野球データ分析 - メジャーリーグ編 / Baseball Analytics for Gen AI
shinyorke
PRO
1
6.5k
ゼロから始めるSREの事業貢献 - 生成AI時代のSRE成長戦略と実践 / Starting SRE from Day One
shinyorke
PRO
3
8.4k
AI・LLM事業部のSREとタスクの自動運転
shinyorke
PRO
0
580
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Dash for Python and Baseball
shinyorke
PRO
2
4.9k
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
PRO
2
3.8k
Other Decks in Research
See All in Research
PGDM: Physically Guided Diffusion Model for L Downscaling
satai
3
420
Anthropic が提案する LLM の内部状態を自然言語で説明可能にした Natural Language Autoencoders / Natural Language Autoencoders Produce Unsupervised Explanations of LLM Activations
shunk031
0
170
Harness Engineering and Al Agent
kzinmr
3
1.9k
[CV勉強会@関東 CVPR2026] PSDesigner: Automated Graphic Design with a Human-Like Creative Workflow / kantocv 67th CVPR 2026
shunk031
0
240
長時間動画QAにおけるマルチエージェント推論 ・SVAgent: Storyline-Guided Long Video Understanding via Cross-Modal Multi-Agent Collaboration
murakawatakuya
1
180
National high-resolution cropland classification of Japan with agricultural census information and multi-temporal multi-modality datasets
satai
3
440
多様なデータを許容し学習し続ける模倣学習 / Advanced Imitation Learning for VLA
prinlab
0
280
ふとした出会いで生まれたSkillが、 社内利用1位になるまで
mikimhk
14
14k
Spatial Active Noise Control Based onSound Field Interpolation Incorporating Physical Constraints
skoyamalab
0
160
SOTAのさらに先へ:厳しい推論制約下での高性能モデルのPost-Training
analokmaus
0
1.4k
某助成金プロジェクト採択に向けて企業研究所のアウトリーチ専任者がやったこと
afroscript
0
170
Scalable dynamic origin-destination demand estimation enhanced by high-resolution satellite imagery data
satai
3
410
Featured
See All Featured
WCS-LA-2024
lcolladotor
0
800
Amusing Abliteration
ianozsvald
1
250
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
720
YesSQL, Process and Tooling at Scale
rocio
174
15k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
210
The untapped power of vector embeddings
frankvandijk
2
1.8k
Believing is Seeing
oripsolob
1
190
Ethics towards AI in product and experience design
skipperchong
2
350
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
270
The Language of Interfaces
destraynor
162
27k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
420
Transcript
None
Who am I? • Shinichi Nakagawa(@shinyorke) • Pythonista/Agile Software Development/Baseball
Analyst • visasQ(ϏβεΫ) Python Engineer/Scrum Master • ւಓຊϋϜϑΝΠλʔζ/Oakland Athletics • ιχʔɾάϨΠ(OAK)ͷαΠϠϯάड &Ԭւ(ϋϜ)ͷελϝϯୣऔΛ৴͍ͯ͡·͢.
ࠓγʔζϯݟͲ͜Ζ ݟͲ͜Ζ ੈؒͷ෩ை தͷݟղ ༏উνʔϜ ɾιϑτόϯΫ ɾϠΫϧτ ɾϋϜ ɾڊਓPSౡ τϦϓϧεϦʔ
ɾ༄ా༔ذ ࿈ଓ ɾࢁాਓ ࿈ଓ ࢁాਓ ࿈ଓ ΪʔλࡾףͲ͏ͧ ΰʔϧσϯάϥϒ ɾ༄ా༔ذ $' ɾௗ୩ܟ 44 ɾೋਓڞऩ ɾγϣʔτ୭͕ʁ ۙ౻݈հ ϋϜ ɾׂຊ͍͚ΔͰʂ ɾࢦ໊ଧऀPSϥΠτ ۙ౻ ࢦcӈcัcࡾc༡ ˠॅॴෆఆʹͳΔ
Starting Member • ٿHack!2015ৼΓฦΓ • MLBҰٿใσʔλͱٿHack • MLBҰٿใσʔλΛPythonͰHackͯ͠ΈΔ ʙpitchpxͱJupyter +
pandas + matplotlibʙ • ར༻ྫʙؠ۾ٱࢤϊʔώοτϊʔϥϯ • ݁ͼʙࠓޙͷٿHack(PyCon JP 2016ʹ͚ͯ) • ʲΦϚέʳ2016ϓϩٿେ༧
ٿHack!1.0(PyCon JP 2015) • MLBͷࢼ߹͝ͱͷଧ੮σʔλΛHack! • ࢄาʢ࢛ٿʣͷʢΠονVSϘοτʣ • ϐονϟʔͷ݄ผউͪʢδϣϯɾϨελʔʣ •
ຖຖࢼ߹ͷσʔλΛऔಘ&ੳ • ΞμϜɾμϯʢଧऀʣ • ඃΞμϜɾμϯʢखʣ • ৄ͘͠εϥΠυΛޚཡ͍ͩ͘͞ or ʮٿ PythonʯͰάάΖ͏
ٿHack!ʙPythonΛ༻͍ͨσʔλੳͱՄࢹԽ PyCon JP 2015ൃදࢿྉ http://www.slideshare.net/shinyorke/hackpython-pyconjp
ٿHack!ʙPythonΛ༻͍ͨσʔλੳͱՄࢹԽ PyCon JP 2015ൃදࢿྉ http://www.slideshare.net/shinyorke/hackpython-pyconjp ͷωλ
ٿHack!ʙPythonΛ༻͍ͨσʔλੳͱՄࢹԽ PyCon JP 2015ൃදࢿྉ http://www.slideshare.net/shinyorke/hackpython-pyconjp ҰٿใΓ͍ͨϯΰ ˠͷςʔϚʂ
ٿHack!ͱҰٿใ • ࢼ߹ɾଧ੮ͷ݁Ռetc…είΞͰଌΕΔωλΓͬͨײ͋Δ • બखͷނোɾෆௐʢௐʣείΞͰଌΕͳ͍ˠΓ͍ͨ • खͳΒٿɾίϯτϩʔϧɾϘʔϧͷճసɺ खकඋൣғ()ɾεΠϯάεϐʔυͰଌΕΔͷͰʂʁ • Ұٿใͷσʔλ͕͋ΕͰ͖ͦ͏…͋ͬͨʂʂʂ
• ࢼ͠ʹͬͯΈΑ͏ʂʂʂˡࠓίί
MLB at BATʙMLBҰٿใ • MLB࣮گҰٿใαʔϏε • PCαΠτɾεϚϗΞϓϦɾApple TVͳͲ • MLB.TVͱ߹ΘͤͯܖͰ࣮گಈըݟΒΕΔ
• σʔλ͕ͱʹ͔͘ॆ࣮
Analyzing Baseball Data with R • MLBͷΦʔϓϯσʔλʮRetrosheetʯ, MLB at BATใσʔλΛ༻͍ͨσʔλੳɾՄࢹ
Խʹ͍ͭͯॻ͔Ε͍ͯΔॻ੶ʢӳޠʣ • RݴޠΛͬͨੳͱՄࢹԽͷωλ͕ϝΠϯ • ʮpitchRxʯͱ͍͏ɺRݴޠͷϥΠϒϥϦΛ༻͍ͯ at BATσʔλΛऔಘ&ՄࢹԽ
“ʮpitchRxʯͱ͍͏ɺ RݴޠͷϥΠϒϥϦΛ༻͍ͯ at BATσʔλΛऔಘ&ՄࢹԽ”
ʁʁʁʮPythonͰΓ͍ͨΜ͡Όʂʯ ※RΛͲ͏͜͏ݴ͏ͱ͔ͦΜͳҙਤ(ry
pitchpx - Getting MLB dataset • MLB at BATͷҰٿใσʔλΛऔಘ&εΫϨΠϐϯάͯ͠ CSVσʔληοτʹམͱ͢PythonϥΠϒϥϦ.
• pitchRx(R)ͳͲΛࢀߟʹࢲ͕։ൃ͠·ͨ͠. • ίϚϯυϥΠϯπʔϧͰ͢. • Python 3.3.xҎ্ઐ༻ˡڧ͍ͩ͜ΘΓ • PyPIͰެ։͍ͯ͠·͢ʂʂʂʢ୭Ͱ͑Δʣ
͍ํ $ # Python 3.3Ҏ্(ਪPython 3.4Ҏ্)͕ಈ͘ڥͰͬͯͶ $ pip install pitchpx
$ # ྫɿ2015/8/1-8/12·Ͱͷࢼ߹݁ՌΛऔಘ͢Δ $ pitchpx -s 20150801 -e 20150812 -o .
ʲྫʳؠ۾ϊʔώοτϊʔϥϯ • ϚϦφʔζ-ΦϦΦʔϧζͷࢼ߹(2015/8/12)ʹͯɺ ϊʔώοτϊʔϥϯΛܾΊͨؠ۾ٱࢤखͷٿΛੳ • ٿɺϘʔϧͷճసɺετϥΠΫκʔϯɺetc… • pitchpxͰऔಘͨ͠σʔλΛpandasͱ matplotlib(&seaborn)Ͱલॲཧ&ՄࢹԽ •
ڥJupyter notebook(Python 3.5.1)
σϞ (লུ)
ৄ͘͠QiitaͰʂʂʂ ؠ۾ٱࢤ(SEA)ͷφΠεϐονϯάΛPythonͰՄࢹԽ http://qiita.com/shinyorke/items/2c2e2c3976fc2d1ed051
݁ͼʙ2016ͷٿHack! • ͦΒʢࠓٿσʔλͷՄࢹԽ͔ͩΒʣ ͦ͏ʢͭ͗कඋσʔλͷՄࢹԽʹʣ Αɹʢܾ·͍ͬͯΔ͡Όͳ͍͔ʣ • PyCon JP 2016(9/21,22)ɺ ʮAnalyzing
Baseball Data With Pythonʯ ͱ͔ͦΜͳλΠτϧͰͬͱ໘ന͍͕Ͱ͖Δϋζ. • ຊެ։ͨ͠ωλੋඇ༡ΜͰΈͯʂ ˠػցֶशͷࡐͱ͔ʹΠέΔΜ͡Όͳ͍ʁ
ʮҰٿใσʔλͷϥΠηϯεʁେৎͳͷʁʯ ※Ұ൪͋Γͦ͏ͳ࣭
ɿ(ݸਓར༻ఔͳΒ)OK ʲެࣜʳ http://gd2.mlb.com/components/copyright.txt ʲ༁&ղઆʳ http://qiita.com/shinyorke/items/566f1b7e7687492a0c7f
ήʔϜηοτʂʂʂ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠. Shinichi Nakagawa(Twitter/Facebook/hatena:@shinyorke)