Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Perambulations in Football Analytics @MarcoBonzanini PyData London
Slide 2
Slide 2 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Nice to meet you • Dr Marco Bonzanini • NLP and Data Science stuff • Consulting, training and coaching on Python + Data Science • Former Chair @ PyData London 2
Slide 3
Slide 3 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 3
Slide 4
Slide 4 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Football Data 4
Slide 5
Slide 5 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Football Data 5 Type Samples / match Cost Summary 10s 🥜 Event 1,000s 💰 Tracking 1,000,000s 💸💸💸
Slide 6
Slide 6 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Football Data 6 Expensive Interesting Summary Event Tracking
Slide 7
Slide 7 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Football Data 7
Slide 8
Slide 8 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Summary Data 8
Slide 9
Slide 9 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Summary Data 9 fbref.com
Slide 10
Slide 10 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 10 fbref.com
Slide 11
Slide 11 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 11 fbref.com
Slide 12
Slide 12 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 12
Slide 13
Slide 13 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Rank on Multiple Columns? 13
Slide 14
Slide 14 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Rank on Multiple Columns? 14 df[columns].apply(tuple,axis=1) Make a tuple from multiple columns, then rank() on that tuple
Slide 15
Slide 15 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 15
Slide 16
Slide 16 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 16 plt.gca().invert_yaxis()
Slide 17
Slide 17 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 17 ax.secondary_yaxis("right")
Slide 18
Slide 18 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 18
Slide 19
Slide 19 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Event Data 19
Slide 20
Slide 20 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Event Data 20
Slide 21
Slide 21 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Shot Maps 21
Slide 22
Slide 22 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 22
Slide 23
Slide 23 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 23
Slide 24
Slide 24 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 24
Slide 25
Slide 25 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 25
Slide 26
Slide 26 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 26
Slide 27
Slide 27 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Passing Maps 27
Slide 28
Slide 28 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 28
Slide 29
Slide 29 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 29 Comet lines + scatter
Slide 30
Slide 30 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 30 Comet lines + scatter
Slide 31
Slide 31 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com Passing Networks 31
Slide 32
Slide 32 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 32 Avg position based on passes
Slide 33
Slide 33 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 33 Passing Network (unweighted)
Slide 34
Slide 34 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 34 Passing Network (weighted)
Slide 35
Slide 35 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com 35 Passing Network (weighted)
Slide 36
Slide 36 text
© Bonzanini Consulting Ltd — BonzaniniConsulting.com To The Pub ⚽ 🍻 36