EPL 13-14th February 2016

EPL 13-14th February 2016

The usual weekly look at the shot statistics behind the weekend's games in the English Premier League. This saw the league leaders end a difficult fixture spell with their first defeat which ended and undefeated run of 7. That has closed up the top four now separated by 6 points.

In [1]:
%matplotlib inline
import league_analysis
from IPython.display import display, HTML
epl = league_analysis.epl
league_analysis.blog_weekly_header(epl, '13/02/2016', '14/02/2016')
Home Away
Team Bournemouth Stoke
Goals 1 3
Shots 11 11
SOT 2 6
Home Away
Team Chelsea Newcastle
Goals 5 1
Shots 15 10
SOT 5 4
Home Away
Team Crystal Palace Watford
Goals 1 2
Shots 14 10
SOT 7 3
Home Away
Team Everton West Brom
Goals 0 1
Shots 34 5
SOT 6 1
Home Away
Team Norwich West Ham
Goals 2 2
Shots 13 11
SOT 3 6
Home Away
Team Sunderland Man United
Goals 2 1
Shots 21 12
SOT 5 6
Home Away
Team Swansea Southampton
Goals 0 1
Shots 13 13
SOT 2 5
Home Away
Team Arsenal Leicester
Goals 2 1
Shots 24 7
SOT 6 3
Home Away
Team Aston Villa Liverpool
Goals 0 6
Shots 6 11
SOT 1 9
Home Away
Team Man City Tottenham
Goals 1 2
Shots 19 6
SOT 4 3
Position Team Points
1 Leicester 53
2 Arsenal 51
- Tottenham 51
4 Man City 47
5 Man United 41
6 Southampton 40
- West Ham 40
8 Liverpool 38
9 Stoke 36
- Watford 36
11 Everton 35
12 Chelsea 33
13 West Brom 32
- Crystal Palace 32
15 Bournemouth 28
16 Swansea 27
17 Norwich 24
- Newcastle 24
19 Sunderland 23
20 Aston Villa 16
Position Team Team Rating
1 Man City 0.23638459957781202
2 Tottenham 0.22851213626249625
3 Liverpool 0.14026653809433803
4 Arsenal 0.13046253321224371
5 Southampton 0.08289344183124904
6 Man United 0.07389941484622846
7 Everton 0.05561406767290818
8 Leicester 0.053593823043520505
9 Chelsea 0.047000649355315796
10 West Ham 0.014125701909591629
11 Bournemouth -0.0163764109645701
12 Watford -0.034648448176929206
13 Swansea -0.06329781165757928
14 Crystal Palace -0.08169525485347501
15 Stoke -0.10138310712952954
16 Norwich -0.1274130554647753
17 Sunderland -0.16103078785503078
18 West Brom -0.1621823222826913
19 Aston Villa -0.17033030708091504
20 Newcastle -0.18926507726470765
Position Team PDO
1 Leicester 0.11351186853317102
2 Everton 0.09966937594710018
3 Watford 0.07407407407407407
4 Arsenal 0.07371304791029559
5 Man United 0.06666666666666665
6 West Ham 0.06656923639020829
7 West Brom 0.03992740471869327
8 Stoke 0.03553719008264461
9 Chelsea 0.03376217743734666
10 Sunderland 0.026973026973027003
11 Tottenham 0.020060331825037747
12 Man City 0.01018848700967906
13 Southampton 0.009852216748768461
14 Crystal Palace -0.03857264231096008
15 Norwich -0.06036745406824151
16 Swansea -0.0742914979757085
17 Newcastle -0.0847839135654262
18 Liverpool -0.11701734957548915
19 Aston Villa -0.12703614457831325
20 Bournemouth -0.14126984126984127

Bournemouth 1-3 Stoke

This result surprised me. I think Bournemouth have genuinely been unfortunate for much of the season. This is backed up by the statistic rankings above, Bournemouth are currently 15th in the league just 4 points off the relegation zone. However their team rating is 11th, above Watford, and their PDO, is again back to rock bottom after briefly lending that position to Liverpool. It is certainly still possible that Bournemouth are relegated. My prediction is that there are enough poorer teams below, for Bournemouth to avoid that fate. I somewhat hope so, because either they have been rather unlucky or there is something systemic about they way they play that would be really interesting to observe for a second full season. Also, their matches are generally entertaining.

Chelsea 5-1 Newcastle

The shot statistics don't quite show the extent of how well Chelsea controlled this game. That often happens with a team that takes an early enough lead that there is no real urgency/onus on them to attack. Three goals in the first 17 minutes. Newcastle have clearly upped their game since Christmas, but they still have a relegation battle on their hands, dropping back into the bottom three with Norwich's point hosting West Ham. Still, Newcastle are no longer in the top three favourites to be relegated.

In [2]:
league_analysis.display_current_runs(epl)
Position Team Winning Run
1 Tottenham 5
2 Southampton 2
- Arsenal 2
4 Liverpool 1
- Stoke 1
- Chelsea 1
- West Brom 1
- Sunderland 1
- Watford 1
10 Swansea 0
- Aston Villa 0
- Bournemouth 0
- Everton 0
- Man City 0
- West Ham 0
- Norwich 0
- Newcastle 0
- Man United 0
- Leicester 0
- Crystal Palace 0
Position Team Unbeaten Run
1 Chelsea 10
2 Southampton 6
3 Tottenham 5
4 Arsenal 3
5 Liverpool 2
- Sunderland 2
7 Stoke 1
- West Brom 1
- West Ham 1
- Norwich 1
- Watford 1
12 Swansea 0
- Aston Villa 0
- Bournemouth 0
- Everton 0
- Man City 0
- Newcastle 0
- Man United 0
- Leicester 0
- Crystal Palace 0
Position Team Winless
1 Crystal Palace 9
2 Norwich 6
3 Swansea 3
4 Bournemouth 2
- Man City 2
- West Ham 2
- Man United 2
8 Aston Villa 1
- Everton 1
- Newcastle 1
- Leicester 1
12 Liverpool 0
- Southampton 0
- Stoke 0
- Chelsea 0
- West Brom 0
- Sunderland 0
- Arsenal 0
- Watford 0
- Tottenham 0
Position Team Losing
1 Bournemouth 2
- Man City 2
3 Swansea 1
- Aston Villa 1
- Everton 1
- Newcastle 1
- Man United 1
- Leicester 1
- Crystal Palace 1
10 Liverpool 0
- Southampton 0
- Stoke 0
- Chelsea 0
- West Brom 0
- West Ham 0
- Sunderland 0
- Norwich 0
- Arsenal 0
- Watford 0
- Tottenham 0

What of Chelsea. That is now 10 games unbeaten, the next nearest is Southampton with 6 (which, given that no one can score against them may well be prolonged). Sort of more like the form of champions, but their team rating is still just 9th. Let's look at those last 10 games:

In [3]:
stats = league_analysis.last_x_game_stats(epl, 10)
league_analysis.header_stat_tables(epl, stats=stats)
Position Team Points
1 Tottenham 25
2 Southampton 19
3 Chelsea 18
- Arsenal 18
- Leicester 18
6 West Ham 16
7 Man City 15
8 Liverpool 14
9 Swansea 13
- Stoke 13
11 Bournemouth 12
- West Brom 12
- Everton 12
- Man United 12
15 Sunderland 11
- Watford 11
17 Aston Villa 10
- Norwich 10
19 Newcastle 8
20 Crystal Palace 6
Position Team Team Rating
1 Tottenham 0.313652736498106
2 Man City 0.20624302547677692
3 Liverpool 0.15722416161620223
4 Chelsea 0.14506647241017773
5 Everton 0.12332072391718414
6 Southampton 0.09941758730434075
7 West Ham 0.0401796464502304
8 Bournemouth 0.003996320077531118
9 Man United 0.0034404779727566902
10 Arsenal -0.011240202407989385
11 Leicester -0.027840722074597708
12 Swansea -0.0406268298871712
13 Stoke -0.044216491759338214
14 Newcastle -0.1163225921978699
15 Watford -0.12696665099070786
16 West Brom -0.13124650204882524
17 Sunderland -0.13276663797157878
18 Aston Villa -0.13918324862663312
19 Norwich -0.17001366569575446
20 Crystal Palace -0.20577182338039113
Position Team PDO
1 Chelsea 0.17417417417417413
2 Southampton 0.1655580192165558
3 Watford 0.1564102564102564
4 Leicester 0.14912280701754385
5 Sunderland 0.07768361581920907
6 West Ham 0.07608695652173914
7 Tottenham 0.05882352941176472
8 Arsenal 0.03656462585034012
9 Man City 0.02613981762917933
10 Everton 0.018803418803418792
11 West Brom 0.01395730706075532
12 Swansea 0.00347222222222221
13 Norwich -0.027997565429093152
14 Man United -0.033333333333333326
15 Liverpool -0.04728720756595317
16 Stoke -0.07162162162162161
17 Bournemouth -0.10744891232696113
18 Crystal Palace -0.17207792207792208
19 Newcastle -0.19130434782608696
20 Aston Villa -0.19260584376863446

Well first of all, Chelsea are third equal in points for the last ten games. Not outstanding given that they are the only team to remain unbeaten for those ten games. Their team rating is 4th, but their PDO is 1st. So what can we conclude? Not much, but perhaps Chelsea are a team that should be on the edge of Champions' league qualification, but had a fairly bad start to the season from which they are not quite good enough to recover sufficiently. Where sufficiently means something like 5th.

Newcastle on the other hand are 14th in team rating over the past 10 games, showing a reasonable progression from where they have been all season. This suggests to me their signings in January have made a difference and if they can just stay out of bad luck they can definitely survive the drop. So far, their PDO rating of 19th suggest they haven't quite seen the fruits of their progression just yet.

Crystal Palace 1-2 Watford

The big news here is that Palace out-shot their opponents. Still they lost, bringing their winless run up to 9 games and dead last in our last-ten-games table. Think about that, Aston Villa are 4 points better off than Palace in the last ten games. More worringly, although a last ten games PDO of -0.17 is bad, and ranking them 18th in the league, their poor form can be just as well explained by their 20th placed team rating. So, on 32 points the big question here is, could Crystal Palace be relegated? Well, 32 points is a pretty decent target already. It seems unlikely that Aston Villa can catch them, and Norwich have almost as bad recent form. So it will depend on Newcastle, Sunderland and Swansea. It seems likely at least one of those will fail to catch Palace. Still Palace fans will want another win and soon:

In [4]:
league_analysis.compare_fixtures(epl, ['Crystal Palace', 'Norwich', 'Newcastle', 'Sunderland', 'Swansea'])
Crystal Palace Norwich Newcastle Sunderland Swansea
West Brom (A) Leicester (A) Man City (H) West Ham (A) Tottenham (A)
Sunderland (A) Chelsea (H) Stoke (A) Crystal Palace (H) Arsenal (A)
Liverpool (H) Swansea (A) Bournemouth (H) Southampton (A) Norwich (H)
Man United (A) Man City (H) Leicester (A) Everton (H) Bournemouth (A)
Leicester (H) West Brom (A) Sunderland (H) Newcastle (A) Aston Villa (H)
West Ham (A) Newcastle (H) Norwich (A) West Brom (H) Stoke (A)
Norwich (H) Crystal Palace (A) Southampton (A) Leicester (H) Chelsea (H)
Arsenal (A) Sunderland (H) Swansea (H) Norwich (A) Newcastle (A)
Everton (H) Watford (H) Liverpool (A) Arsenal (H) Leicester (A)
Newcastle (A) Arsenal (A) Crystal Palace (H) Stoke (A) Liverpool (H)
Stoke (H) Man United (H) Aston Villa (A) Chelsea (H) West Ham (A)
Southampton (A) Everton (A) Tottenham (H) Watford (A) Man City (H)

Games against West Brom (also on 32 points) and Sunderland look good candidates, but they are away from home. After that a tricky run of fixures in Liverpool, Manchester United and Leicester.

Everton 0-1 West Brom

Wow. We thought Newcastle were fortunate to beat Bournemouth earlier in the season.

Norwich 2-2 West Ham

Norwich really really needed these three points. Really could have had them. That is six without a win now for Norwich with Leicester and Chelsea next up it could easily extend to 8 without a win. West Ham are still ahead of Liverpool and joint with Southampton, though I suspect both will finish (probably even comfortably) above West Ham. Still, West Ham have a positive team rating and are in the top half of the league. That has to go down as (so far) a pretty successful season for West Ham.

Sunderland 2-1 Manchester United

Sunderland have out-shot both Manchester United and Manchester City this season. Rare indeed. This was a pretty deserved victory even though Manchester United managed an extra shot on target. Pretty promising for Sunderland in a season that has not seen a lot of promise. Home and away form shows that Sunderland have been equally bad at either, whereas Newcastle have decent home form. Note also the Manchester clubs' away form, both significantly worse than their home form despite this home loss to Sunderland. Leicester and Tottenham both producing away from home.

In [13]:
display(HTML('<h2>Home Form</h2>'))
league_analysis.header_stat_tables(epl, stats=epl.home_team_stats.values())
display(HTML('<h2>Away Form</h2>'))
league_analysis.header_stat_tables(epl, stats=epl.away_team_stats.values())

Home Form

Position Team Points
1 Man City 28
2 Arsenal 27
3 Leicester 25
- Tottenham 25
5 Southampton 23
6 Man United 22
7 Chelsea 20
- West Ham 20
9 Watford 18
10 Swansea 17
- Liverpool 17
- Stoke 17
- Newcastle 17
14 West Brom 16
- Everton 16
- Norwich 16
17 Sunderland 15
18 Crystal Palace 14
19 Bournemouth 13
20 Aston Villa 10
Position Team Team Rating
1 Tottenham 0.2775535982170872
2 Man City 0.2766260512401658
3 Man United 0.26689373666121285
4 Liverpool 0.18236657427150557
5 Arsenal 0.16309089838596033
6 Southampton 0.1390275611485289
7 West Ham 0.10115789283180579
8 Everton 0.10108706004836762
9 Chelsea 0.09739130728381235
10 Leicester 0.08366459063767881
11 Bournemouth 0.045777950862696606
12 Watford 0.045653956960908924
13 Norwich 0.014497625343774101
14 Stoke 0.003922361469851069
15 Crystal Palace -0.018163964910808947
16 Newcastle -0.03163223853151367
17 Swansea -0.03744230524301533
18 Sunderland -0.058082084108647666
19 West Brom -0.06890456620671082
20 Aston Villa -0.08610679703958697
Position Team PDO
1 Man United 0.19642857142857142
2 Sunderland 0.14295485636114913
3 Leicester 0.11351909184726522
4 Arsenal 0.10569456427955132
5 Man City 0.08104395604395609
6 Chelsea 0.05927601809954747
7 Newcastle 0.05205811138014527
8 Everton 0.04802076573653474
9 Stoke 0.04232558139534881
10 Southampton 0.03437499999999999
11 Tottenham 0.030281007751937983
12 Watford 0.02638888888888888
13 West Ham 0.01731601731601734
14 West Brom 0.0012864493996569415
15 Norwich -0.0008525149190110604
16 Swansea -0.02380952380952378
17 Crystal Palace -0.10256410256410253
18 Aston Villa -0.12458471760797343
19 Bournemouth -0.17857142857142855
20 Liverpool -0.23444976076555024

Away Form

Position Team Points
1 Leicester 28
2 Tottenham 26
3 Arsenal 24
4 Liverpool 21
5 West Ham 20
6 Stoke 19
- Everton 19
- Man City 19
- Man United 19
10 Watford 18
- Crystal Palace 18
12 Southampton 17
13 West Brom 16
14 Bournemouth 15
15 Chelsea 13
16 Swansea 10
17 Sunderland 8
- Norwich 8
19 Newcastle 7
20 Aston Villa 6
Position Team Team Rating
1 Man City 0.1725730325769805
2 Tottenham 0.17033454803656944
3 Liverpool 0.08981412570356766
4 Arsenal 0.08709107399355219
5 Leicester 0.02743044475163485
6 Southampton 0.015710776410565102
7 Everton -0.002692833117750884
8 Chelsea -0.026401124790492274
9 Man United -0.049251292161275724
10 West Ham -0.06140146320442257
11 Bournemouth -0.07341913322556437
12 Swansea -0.08169711757507404
13 Watford -0.10386298679909228
14 Crystal Palace -0.14786820504864134
15 Stoke -0.18172995712711232
16 Aston Villa -0.24492998079052658
17 Sunderland -0.24815645890387505
18 Norwich -0.25387673415513706
19 West Brom -0.260371233704567
20 Newcastle -0.3479487649605296
Position Team PDO
1 Everton 0.16181818181818183
2 Watford 0.14041514041514042
3 West Ham 0.1197827329902802
4 Leicester 0.11207598371777477
5 West Brom 0.05902777777777779
6 Crystal Palace 0.04043126684636117
7 Stoke 0.030266706622715023
8 Arsenal 0.02573529411764708
9 Tottenham 0.010038610038610063
10 Man United -0.0013668671405139277
11 Chelsea -0.011111111111111127
12 Southampton -0.034042553191489355
13 Liverpool -0.039649986327590925
14 Sunderland -0.06443798449612403
15 Man City -0.0976190476190476
16 Bournemouth -0.0982142857142857
17 Swansea -0.11245283018867924
18 Norwich -0.12200956937799046
19 Aston Villa -0.12681159420289856
20 Newcastle -0.23593073593073596

Swansea 0-1 Southampton

Southampton continue to do what they are good at. They are preventing teams from scoring. I'm sure there is a lot more interesting things to say about Southampton but it will have to wait for more in-depth analysis (which means me waiting for statsbomb to produce one). Southampton will be pleased with an away victory which even with that only moves them up to 12th in the league away form, compared to 5th home form. In any case, Southampton have not been lucky this season so they'll be pretty happy to have ridden through some rough results in the first half to find themselves currently 6th equal with West Ham. It would be surprising if they do not finish above West Ham and surely Manchester United are not entirely safe from Southampton. However, Liverpool and even possibly Chelsea could strike from below.

Swansea are not doing an awful lot wrong they just need more points. With Newcastle doing better since Christmas, Swansea look vulnerable.

Arsenal 2-1 Leicester

First of all, they may have required an injury time winner, but Arsenal were clearly well on top. It may have been that the relatively soft red card was the reason Arsenal dominated, but that does not change the fact that Arsenal deserved to win this game. It certainly bunches up the top four a bit more. Manchester City starting to look a bit far behind, if they were 6 points behind Leicester but in second place you would possibly favour them or at least give them a good chance of taking the title. Four points on either Tottenham or Arsenal would also be far from insurmountable, but it seems likely that one of Tottenham or Arsenal will have a pretty decent finish to the season, meaning that Manchester City would have to have a near flawless end. That is assuming Leicester drop more than six points themselves.

On that note, having come through a pretty difficult sequence, Leicester now have a pretty gentle run; Norwich, West Brom, Watford, Newcastle, and Crystal Palace all look winnable. Even after that, Southampton will be tough but then Leicester face Sunderland, West Ham and Swansea, again, all winnable. A tricky finish to the season might not matter as they could be 9 points up by then.

That said, most of the top four have actually played each other and as a result none look to have very menacing run-ins. Would it be so impossible for Manchester City to win all 12 remaining matches? Probably yes, but going undefeated and dropping just 4 or 6 points seems possible.

For my money, Tottenham look pretty good now. But that London derby with Arsenal in three weeks' time looks like it might be, ..., interesting.

In [14]:
league_analysis.compare_fixtures(epl, ['Leicester', 'Tottenham', 'Arsenal', 'Man City', 'Man United'])
Leicester Tottenham Arsenal Man City Man United
Norwich (H) Swansea (H) Man United (A) Newcastle (A) Arsenal (H)
West Brom (H) West Ham (A) Swansea (H) Liverpool (A) Watford (H)
Watford (A) Arsenal (H) Tottenham (A) Aston Villa (H) West Brom (A)
Newcastle (H) Aston Villa (A) West Brom (H) Norwich (A) Crystal Palace (H)
Crystal Palace (A) Bournemouth (H) Everton (A) Man United (H) Man City (A)
Southampton (H) Liverpool (A) Watford (H) Bournemouth (A) Everton (H)
Sunderland (A) Man United (H) West Ham (A) West Brom (H) Tottenham (A)
West Ham (H) Stoke (A) Crystal Palace (H) Chelsea (A) Aston Villa (H)
Swansea (H) West Brom (H) Sunderland (A) Stoke (H) West Ham (A)
Man United (A) Chelsea (A) Norwich (H) Southampton (A) Leicester (H)
Everton (H) Southampton (H) Man City (A) Arsenal (H) Norwich (A)
Chelsea (A) Newcastle (A) Aston Villa (H) Swansea (A) Bournemouth (H)

Aston Villa 0-6 Liverpool

Well, this was a bit of a demolition. As is often the case, the 6 goal difference was probably a little down to luck. It's luck that Liverpool have been due. I say that is often the case because once a team has a three goal advantage their shot rate tends to dip considerably. Thus if they do end up scoring 6 or so goals it is usually on the back of a high conversation rate for at least the final three goals, and they may well have had a pretty high conversion rate for the first three as well. In other words, you don't tend to score 6 goals against premier league opposition unless most things go your way. There are exceptions. But this was not really one of them. But well deserved good news for Liverpool.

Manchester City 1-2 Tottenham

A massive three points for Tottenham. Much will be made of the pretty fortunate penalty award. More importantly Tottenham were comprehensively out-shot in this game, and that is depsite their winner coming in the 83rd minute. I think a lot of narratives will be written suggesting that Manchester City are all but dead in the title race. However, let's not forget, Manchester City are currently top for team rating, albeit by a slim margin over Tottenham (who themselves have a big lead over Liverpool). If Manchester City are to win the title they will need pretty close to all 36 points from their remaining 12 games, but they are clearly one of, if not the, best teams in the league.

Tottenham are probably now favourites.

Bonus Graphs

A little bonus graphs plotting team points versus their team rating and PDO for the season. This mostly visualises Leicester's over-performance and Aston Villa's underperformance. Keep in mind, team rating and PDO are not flawless measures of skill and luck. So this is Leicester's overperformance according to this team rating metric of skill.

In [18]:
def get_team_rating(league, team):
    return league.team_stats[team].team_rating
def get_points(league, team):
    return league.team_stats[team].points
def get_pdo(league, team):
    return league.team_stats[team].pdo

league_analysis.scatter_stats(epl, get_x_stat=get_team_rating, get_y_stat=get_points,
                              title='Points/Team Rating', ylabel='Points', xlabel='Team Rating')
line of best fit: 64.41 x + 35.49

Here is the PDO graph. Check out Bournemouth and Liverpool. Sunderland are also an interesting case. What this likely means is that Sunderland have had more than an average amount of luck, but they may have benefitted from this luck in ways that have not really affected their haul of points. So for example they may have been fortunate to lose a couple of games 1-0 when it should have really been more like 4-0, but they haven't gained any points from this.

It is worth noting that the top four are all above the trend line. For me, if Liverpool had a positive PDO, they may well be in the top four positions.

In [20]:
league_analysis.scatter_stats(epl, get_x_stat=get_pdo, get_y_stat=get_points,
                              title='Points/PDO', ylabel='Points', xlabel='PDO')
line of best fit: 81.32 x + 35.24

Thanks for reading.

Comments

Comments powered by Disqus