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
1.2k
投球を可視化する技術〜Analyzing Pitching Data With Python
MLBの一球速報データを使った投球データの可視化をPython他でやってみました.
BPStudy #103 2016/3/22 発表資料
Shinichi Nakagawa
PRO
March 22, 2016
Tweet
Share
More Decks by Shinichi Nakagawa
See All by Shinichi Nakagawa
自らを強いエンジニアにするための3つの習慣 2025/ Fitter happier more productive
shinyorke
PRO
0
270
生成AI時代におけるSREの進化とキャリア戦略 / Building an Embedded SRE team and my career
shinyorke
PRO
0
130
生成AIを活用した野球データ分析 - メジャーリーグ編 / Baseball Analytics for Gen AI
shinyorke
PRO
1
5.9k
ゼロから始めるSREの事業貢献 - 生成AI時代のSRE成長戦略と実践 / Starting SRE from Day One
shinyorke
PRO
2
6.7k
AI・LLM事業部のSREとタスクの自動運転
shinyorke
PRO
0
520
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Dash for Python and Baseball
shinyorke
PRO
2
4.1k
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
PRO
2
3.6k
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
PRO
9
4.3k
自らを強いエンジニアにするための3つの習慣 / I need to be myself, I can't be no one else
shinyorke
PRO
86
91k
Other Decks in Research
See All in Research
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Combining Deep Learning and Street View Imagery to Map Smallholder Crop Types
satai
3
580
視覚から身体性を持つAIへ: 巧緻な動作の3次元理解
tkhkaeio
0
190
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
100
生成AI による論文執筆サポート・ワークショップ 論文執筆・推敲編 / Generative AI-Assisted Paper Writing Support Workshop: Drafting and Revision Edition
ks91
PRO
0
120
[チュートリアル] 電波マップ構築入門 :研究動向と課題設定の勘所
k_sato
0
260
Collective Predictive Coding and World Models in LLMs: A System 0/1/2/3 Perspective on Hierarchical Physical AI (IEEE SII 2026 Plenary Talk)
tanichu
1
250
生成的情報検索時代におけるAI利用と認知バイアス
trycycle
PRO
0
300
競合や要望に流されない─B2B SaaSでミニマム要件を決めるリアルな取り組み / Don't be swayed by competitors or requests - A real effort to determine minimum requirements for B2B SaaS
kaminashi
0
760
Aurora Serverless からAurora Serverless v2への課題と知見を論文から読み解く/Understanding the challenges and insights of moving from Aurora Serverless to Aurora Serverless v2 from a paper
bootjp
6
1.5k
20年前に50代だった人たちの今
hysmrk
0
140
さまざまなAgent FrameworkとAIエージェントの評価
ymd65536
1
420
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
The browser strikes back
jonoalderson
0
400
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
71
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
280
Faster Mobile Websites
deanohume
310
31k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
65
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
340
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
420
Building Flexible Design Systems
yeseniaperezcruz
330
40k
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)