Contenu connexe
Similaire à ビックデータとPythonではじめる野球の統計分析 #pyconjp (6)
Plus de Shinichi Nakagawa (20)
ビックデータとPythonではじめる野球の統計分析 #pyconjp
- 2. Starting Member
• Who am I ?
• Hack→! Hack!!
• (MLBAM) Python & (pitchpx)
• Jupyter lab, pandas, matplotlib
• LT
•
• VS ※
• @amacbee
•
- 3. Who am I?
• Shinichi Nakagawa(@shinyorke)
• Python ※
• visasQ( ) Web Engineer
• Pythonista, Agile & Scrum & Kanban coach, Baseball Analyst
• /
•
• ( )
•
8-7 9 .
- 4. visasQ?
• .
• 1 2
.
• Django .
• https://service.visasq.com
• CTO LT (ry
- 5. hack?
• ( ) Python OSS .
• ” ” .
Web (
• .
→ !
• (@shinyorke) /MLB
.
- 11. MLBAM Dataset(Pitch f/x)
• MLB Advanced Media(MLB ) XML
.
• PITCH f/x
Statscast Sensor ( / ) .
• ( )100 .
• Copyright , OK.
• Github .
• http://gd2.mlb.com/components
- 15. Analyzing Baseball Data with R
• MLBAM Retrosheet(※ Hack
)
• R(R Studio, pitchRx)
• https://www.amazon.co.jp/dp/B00GBC36S4
- 17. pitchpx - Getting MLB dataset
• MLBAM XML
CSV .
• pitchRx(R) (@shinyorke) .
• Python 3.3.x ( :Legacy Python!!!).
• BeautifulSoup( ),click( )
.
• PyPI .
• Jupyter, pandas .
- 18. $ # Python 3.3 ( Python 3.4 )
$ pip install pitchpx
$ # 2015/8/1-8/12
$ pitchpx -s 20150801 -e 20150812 -o .
- 20. • Jupyter + pandas + matplotlib ,
PyData .
• Jupyter lab .
• INPUT/OUTPUT, pandas.
• matplotlib,seaborn .
• Qiita, .
- 29. Yu Darvish(2013, 2016)
• TJ( ) ( etc…)
• TJ (2013) (SL) (FC)
• TJ (2016) 4 (FF) 2 (FT) SL FC
• !?
2013(TJ ) 2016(TJ )
※
'CH': 'Change-up',
'CU': 'Curveball',
'EP': 'Ephuus',
'FA': 'Fastball',
'FC': 'Cut Fastball',
'FF': 'four-seam Fastball',
'FO': 'Forkball',
'FS': 'Split-finger Fastball',
'FT': 'two-seam Fastball',
'KC': 'Knuckle Curve',
'KN': 'Knuckleball',
'SC': 'Screwball',
'SI': 'Sinker',
'SL': 'Slider',
'UN': 'Unknown'
- 31. 5 7 8
• ( DL )
• 5-7 8
• 4
2016/5-7 2016/8
※
'CH': 'Change-up',
'CU': 'Curveball',
'EP': 'Ephuus',
'FA': 'Fastball',
'FC': 'Cut Fastball',
'FF': 'four-seam Fastball',
'FO': 'Forkball',
'FS': 'Split-finger Fastball',
'FT': 'two-seam Fastball',
'KC': 'Knuckle Curve',
'KN': 'Knuckleball',
'SC': 'Screwball',
'SI': 'Sinker',
'SL': 'Slider',
'UN': 'Unknown'
- 32. Four seam
• TJ 4 !?
• 2013 (called strike)
• 2016 (swinging strike)
•
2013(TJ ) 2016(TJ )
- 36. VS (2016 )
•
• (FF)
• (FT) ( )
• (42) (33) !?
Ichiro Suzuki Joey Votto
※
'CH': 'Change-up',
'CU': 'Curveball',
'EP': 'Ephuus',
'FA': 'Fastball',
'FC': 'Cut Fastball',
'FF': 'four-seam Fastball',
'FO': 'Forkball',
'FS': 'Split-finger Fastball',
'FT': 'two-seam Fastball',
'KC': 'Knuckle Curve',
'KN': 'Knuckleball',
'SC': 'Screwball',
'SI': 'Sinker',
'SL': 'Slider',
'UN': 'Unknown'
- 38. • ( 165cm) 2
• … (SL).
• ?!?!?!?
• !?( )
Jose Altuve(26) Kris Bryant(24)
※
'CH': 'Change-up',
'CU': 'Curveball',
'EP': 'Ephuus',
'FA': 'Fastball',
'FC': 'Cut Fastball',
'FF': 'four-seam Fastball',
'FO': 'Forkball',
'FS': 'Split-finger Fastball',
'FT': 'two-seam Fastball',
'KC': 'Knuckle Curve',
'KN': 'Knuckleball',
'SC': 'Screwball',
'SI': 'Sinker',
'SL': 'Slider',
'UN': 'Unknown'
- 40. VS Part2(Hit Zone)
• X (start_speed, ), Y , (pa_event_cd)
• pa_event_cd (20), (21), (22), (23)
※Retrosheet
• pitch_type orz
※
'CH': 'Change-up',
'CU': 'Curveball',
'EP': 'Ephuus',
'FA': 'Fastball',
'FC': 'Cut Fastball',
'FF': 'four-seam Fastball',
'FO': 'Forkball',
'FS': 'Split-finger Fastball',
'FT': 'two-seam Fastball',
'KC': 'Knuckle Curve',
'KN': 'Knuckleball',
'SC': 'Screwball',
'SI': 'Sinker',
'SL': 'Slider',
'UN': 'Unknown'
Ichiro Suzuki Joey Votto
- 41. VS Part2(Hit Zone)
• X (start_speed, ), Y , (pa_event_cd)
• pa_event_cd (20), (21), (22), (23)
※Retrosheet
• pitch_type orz
※
'CH': 'Change-up',
'CU': 'Curveball',
'EP': 'Ephuus',
'FA': 'Fastball',
'FC': 'Cut Fastball',
'FF': 'four-seam Fastball',
'FO': 'Forkball',
'FS': 'Split-finger Fastball',
'FT': 'two-seam Fastball',
'KC': 'Knuckle Curve',
'KN': 'Knuckleball',
'SC': 'Screwball',
'SI': 'Sinker',
'SL': 'Slider',
'UN': 'Unknown'
Ichiro Suzuki Joey Votto
- 42. •
4
• ( ) …
•
,
(& ISSUE )
- 47. • Kawasaki.rb #kwskrb http://kawasakirb.github.io/
PyCon JP 2014 2016,
• BPStudy #bpstudy http://bpstudy.connpass.com/
BPStudy Hack .
•
- 48. & PyCon JP 2016 !
Shinichi Nakagawa(Twitter/Facebook/visasQ:@shinyorke)