Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
230
生成AI時代におけるSREの進化とキャリア戦略 / Building an Embedded SRE team and my career
shinyorke
PRO
0
120
生成AIを活用した野球データ分析 - メジャーリーグ編 / Baseball Analytics for Gen AI
shinyorke
PRO
1
5.5k
ゼロから始めるSREの事業貢献 - 生成AI時代のSRE成長戦略と実践 / Starting SRE from Day One
shinyorke
PRO
2
6.1k
AI・LLM事業部のSREとタスクの自動運転
shinyorke
PRO
0
490
実践Dash - 手を抜きながら本気で作るデータApplicationの基本と応用 / Dash for Python and Baseball
shinyorke
PRO
2
3.8k
Terraform, GitHub Actions, Cloud Buildでデータ基盤をProvisioningする / Data Platform provisioning for Google Cloud and Terraform
shinyorke
PRO
2
3.5k
Cloud RunとCloud PubSubでサーバレスなデータ基盤2024 with Terraform / Cloud Run and PubSub with Terraform
shinyorke
PRO
9
4.2k
自らを強いエンジニアにするための3つの習慣 / I need to be myself, I can't be no one else
shinyorke
PRO
86
90k
Other Decks in Research
See All in Research
とあるSREの博士「過程」 / A Certain SRE’s Ph.D. Journey
yuukit
11
5k
学習型データ構造:機械学習を内包する新しいデータ構造の設計と解析
matsui_528
4
1.6k
【輪講資料】Moshi: a speech-text foundation model for real-time dialogue
hpprc
3
810
Sat2City:3D City Generation from A Single Satellite Image with Cascaded Latent Diffusion
satai
4
300
HoliTracer:Holistic Vectorization of Geographic Objects from Large-Size Remote Sensing Imagery
satai
3
280
LLM-Assisted Semantic Guidance for Sparsely Annotated Remote Sensing Object Detection
satai
3
110
Adaptive Experimental Design for Efficient Average Treatment Effect Estimation and Treatment Choice
masakat0
0
140
J-RAGBench: 日本語RAGにおける Generator評価ベンチマークの構築
koki_itai
0
1k
投資戦略202508
pw
0
580
[論文紹介] Intuitive Fine-Tuning
ryou0634
0
150
不確実性下における目的と手段の統合的探索に向けた連続腕バンディットの応用 / iot70_gp_rff_mab
monochromegane
2
250
さまざまなAgent FrameworkとAIエージェントの評価
ymd65536
1
330
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
470
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Docker and Python
trallard
46
3.7k
Building Adaptive Systems
keathley
44
2.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
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)