Allsvenskan round 23 update

It’s been over six weeks since my last Allsvenskan update but now I finally have time to get to it. Six rounds have been played since last time and a lot has happened. Let’s take a look at the league table:

00

Compared to last time, we can immediately see that reigning champions Norrköping have climbed up above Malmö to claim the top spot, which is very impressing given the players who have left the club, and the mid-season managerial change.

At the other end of the table, Djurgården have (luckily for me) picked up pace under new manager Dempsey and moved up from 14th to 11th, while Helsingborg and Sundsvall have struggled – only picking up 2 points each.

Let’s have a closer look on how the teams have performed:01

Despite giving up the first place in the table to Norrköping, Malmö have distanced themselves from the rest in terms of shot dominance. Not much else has changed, Örebro are still involved in some very open games while Gefle struggle to create chances.

02

Örebro and Elfsborg have moved into the ‘constant threat’ quadrant thanks to some effective scoring, while Hammarby have done the opposite. Kalmar have improved their effectiveness, but at the same time seen a drop in shots taken per game.

03

Here we see how AIK’s and Norrköping’s improvements come mainly from their defensive work; both sides have been better at keeping shots from going in since the last update. Kalmar’s defensive effectiveness has improved as well.

04

05

Expected goals for and against look much like they did last time but AIK’s defensive improvements have seen them close in on the top 2 sides, as they’ve increased their xGD by nearly 0.20 per game.

How about a prediction then?06

Malmö’s defeat to Djurgården has really opened up the title race, but my model still fancy them. Norrköping have improved though, and we could be in for a very interesting finish to the season. AIK have improved as well, and have seemingly all but locked in a top-3 spot. In the other end of the table Falkenberg have plummeted from around 22 expected points to less than 16, with the model giving them no chance of reaching the relegation play-off spot occupied by Helsingborg.

Djurgården under Mark Dempsey

As mentioned earlier, as a Djurgården supporter I’m very happy with how the form has improved under new manager Dempsey. In the last update I showed the long-term trends leading up to Olsson’s sacking, and now that Dempsey’s been in charge for 7 games we can see how he’s managed to turn things around:

07

While shots conceded actually declined during Olsson’s last season, so did shots taken. What we see under Dempsey’s rule is clear: everything have improved! Djurgården now concede less and take more shots but more importantly, both actual goal difference and xG difference has improved, leading to more points and a climb in the league table.

Though a bit of hindsight, through my work with Norwegian football I was optimistic about Dempsey coming in as I knew he would provide the energy needed for a turnaround. Let’s hope Djurgården can continue to pick up points to climb further.

Passing spiders

Another thing I mentioned in the last update was how Opta data is now available for Allsvenskan, and I showed some passing maps heavily inspired by 11tegen11 and David Sumpter. I’ve since then played around with the script to create passing map animations, which received a lot of positive feedback on twitter and have now been dubbed ‘passing spiders’, often a quite fitting name.

I don’t know enough about tactics to determine if these animations holds some analytical value, but they are fun to look at and could possibly be used to provide an interesting narrative of individual games combined with other types of analysis. I got a lot of good advice on improvements on the animation and will implement some of it in the future.

That’s it for now!

Advertisements
Allsvenskan round 23 update

Expected Goals for Damallsvenskan, Sweden’s top women’s league

Watching the Swedish Women’s National Team beat Brazil to advance to the final in the Olympics, I suddenly realised that the shot location data I collect for Allsvenskan is available for the top women’s league Damallsvenskan as well. I then thought about Chad Murphy’s work collecting data MANUALLY for USA’s NWSL and how I should build an Expected Goals model for Damallsvenskan.

Hoping that the data was of the same quality as that for Allsvenskan, and with the code more or less already in place from my other projects, I plotted out the xG difference for each team this season:

05

Wow, only 3 teams with positive xGD! Had I found some bug in the code or was the data faulty? Having next to no knowledge about the league I looked it up, and yeah, Damallsvenskan is very skewed towards a few top teams:

00

Rosengård and Linköping really dominate the league and have all but locked up the Champions League spots with their 30+ points already, while the four bottom teams all have less than 10 points. As we’ve seen above, Linköping is the really superior side when it comes to Expected Goals.

Let’s dig deeper:

01

Here we see part of why Linköping have such a commanding lead in the xGD table. They take far more shots per game than anybody, and over 4 shots more than closest contestants Rosengård. The two top teams look superior when it comes to shots, but what about effectiveness?

02

The top teams stands out here too, but this time it’s Rosengård with the superior numbers as they score on nearly every 4th shot! Kristianstad on the other hand are very ineffective with about 13 shots per goal.

03

The two top sides don’t stand out defensively, instead it’s Kopparbergs/Göteborg who dominate the defensive effectiveness with over 13 shots faced per goal conceded. At the bottom, Mallbacken are struggling defensively with under 5 shots faced per goal conceded!

04

Looking at Expected Goals for and against we really see how especially Linköping dominate the league by keeping a solid defence and producing a crazy ~3 xG per game!

Player stats

Ok, so that’s it about teams – what about individual players? I ran my player script and was happy to see two players I’ve heard of despite not following women’s football: Stina Blackstelius I know from the Swedish national team and Marta I know because she’s Marta.

06

There’s a lot of players with a Goal Contribution around 1 per game, and as expected they’re mostly from the top teams. As a Djurgården supporter, I’m happy to see young Johanna Kaneryd placing second of the younger players. So what about Expected Goals?

07

Not surprisingly, xG queens Linköping occupy the top three spots when it comes to xG per 90 mins. What is surprising though is that top contender Rosengård only have one player in the top 10, with Marta just missing out by 0.03 xG90.

Prediction

What about a prediction then? As we’ve seen, the model clearly ranks Linköping highest and as they’ve got one game in hand and Rosengård left to face at home, this really shows up in the prediction with the model giving them 72% to take the title.

08

Expected Goals for Damallsvenskan, Sweden’s top women’s league

Allsvenskan round 17 update & Opta data!

Ok, it’s time for another Allsvenskan update. With 5 rounds having been played since last time we should be able to see some changes.

00

Looking at the table we see how Djurgården, Örebro and Sundsvall all have dropped a few places while Östersund and Häcken are the big winners. As a result of Djurgården’s poor performance, Pelle Olsson has been sacked and replaced by Mark Dempsey.

01

As I noted last time, the league seems to have settled when it comes to shots. Indeed, no team has changed quadrant since the last update.

02

Looking at attacking effectiveness we see how Gefle have become more clinical in front of goal while Djurgården have become more ineffective, partly explaining their struggles.

03

Only Elfsborg have changed defensive quadrant since last time, dropping from ‘competent but busy’ to ‘pushovers’. Hammarby and Sundsvall have also dropped a bit while Malmö have improved their defence.

04

05

Malmö and Norrköping are still at the top of the xG-table, but the big surprise is Östersund’s rise to third place – mostly due to an improvement in their attacking output. Despite their recent struggles, Djurgården still sits in sixth place. Helsingborg have climbed up to 13th, leaving Gefle at the bottom.

06

07

08

Looking at Expected Points, we can see just how bad Djurgården have performed recently. They are ranked sixth by xPoints but sit at the bottom of the xPoints Performance table, about 9 points below expectation. In my simulations, they reached at least their current total of 18 points about 98% of the time – indicating a massive underperformance.

09

My game simulation model still consider Malmö heavy favourites for the title. I certainly agree but 93% is much too high considering they’re only 1 point ahead of Norrköping at the moment.

Djurgården managerial change, and Opta data

As a Djurgården supporter I’ve welcomed Pelle Olsson’s sacking, as DIF have been very poor under him this season. Shot dominance has decreased since last season, but more importantly, the actual goal difference and Expected Goals Difference have plummeted. The club’s situation look alarmingly similar to when Per-Mathias Høgmo came in to save us from relegation in 2013. Hopefully Høgmo’s former assistant coach can repeat that feat this autumn.

pelle_01

More news is that Opta data is now available for Allsvenskan. I probably won’t have time to dig too deep into it at the moment, but I’ve written a script for plotting passing networks, heavily influenced by 11tegen11 and David Sumpter.

Using these plots, we can compare Pelle Olsson’s last game using a 4-4-2 formation (Opta has it down as a weird 4-2-2-2 though) against Dempsey’s first game in charge where he used the same formation.1517

Sure, it’s only one game – but we can see some distinct differences here as Dempsey used a midfield diamond with Kevin Walker pushing up while Alexander Faltsetas dropped down deeper. Olsson has always favoured two holding central midfielders. Also, Dempsey has gone for a more straight forward approach to attacking, with more direct passes up towards the strikers, while Olsson used more crossing.

Allsvenskan round 17 update & Opta data!

Allsvenskan and Superettan player update

With Allsvenskan back in action after the summer break and the transfer window approaching, I thought it would be interesting to take a look at some individual player stats. Some players have already left the league for new challenges abroad, and when the window opens on July 15th we’ll likely see some moves between Swedish clubs as well. Given the limitations of my database, this post will focus on attacking players as the most advanced data available is shot coordinates.

I usually don’t write about Sweden’s second tier Superettan, simply because I don’t follow it at all, but as there are several players who could move to Allsvenskan and even abroad, I’ve also looked at players from this league.

So let’s start with taking a look at which players have produced the highest number of goals, assists and Expected Goals so far this season. I’ve only included players who have played 1/3 of the league so far (390 and 450 mins for Allsvenskan and Superettan, respectively) and also looked closer at younger players, splitting them into two groups: players aged 20-23 and players aged up to 19.

Allsvenskanplayers_01

players_02

Player profiles

There are some players in the plots above worth looking closer at. Let’s start out with last year’s top scorer, Emir Kujovic:players_03Kujovic has just recently signed with Belgian side Gent, leaving reigning champions Norrköping after a couple of highly productive seasons. His goal and xG output this season are on par with last season’s but he’s also doubled his assists per 90 minutes, having been involved in almost a goal per game this season. I don’t know much about Belgian football, but given the right kind of attacking style he may very well score some goals over there.

players_04Häcken’s Paulo De Oliveira, or Paulinho as he’s called, leads the league in assists+goals per 90 with his impressing 1.13 made up of just goals. Having overperformed against xG since his return to Swedish football, Paulinho may very well be the best finisher in the league.

players_05With Malmö struggling to capitalise on their xG last season, Vidar Kjartansson has grown into a very good signing for them. I haven’t seen him played that much, but given his shot profile he looks just like the strong center forward scoring from mostly inside the box they needed to gradually phase out the aging Markus Rosenberg.

players_06Struggling to take a regular spot at Malmö for the last couple of seasons, Pawel Cibicki’s move to newcomers Jönköpings Södra has worked out well for him. With more playing time, he has continued to improve his goal output and given his age he could be on his way to a bigger club abroad soon.

players_07One who has already taken the next step is AIK’s loan Carlos Strandberg, who after struggling at Russian CSKA Moscow returned to Sweden this season. The young and forceful striker continued where he picked up and has been crucial for his club this season. From his shot profile we can see that he favours shooting from the left, mostly due to his powerful left foot. Set to return to Russia soon, Strandberg will make his last game against Malmö this weekend.

players_08Leading the youngest players in xG per 90 is another AIK striker, 16 year old Alexander Isak, who has impressed so far and is supposedly targetted by a number of big European clubs. Yeah, the sample size is small but given his very young age he’s done well and should he continue to improve he could grown into a class player.

 

Superettan

As I’ve said, I very rarely watch Superettan so I know next to nothing about most players in the league. Here I’ve just picked out a few interesting players from the ranking below to look closer at, and I’ll leave the shot profiles uncommented.

players_09

players_10

players_11

players_12

players_13

players_14

players_15

That’s it for now, but if you want to see shot profiles from any other player in these leagues, just hit me up on Twitter.

Allsvenskan and Superettan player update

Another Allsvenskan 2016 update

As the league has now gone on a summer break for the UEFA Euro 2016, let’s take another look a the Allsvenskan season so far.

2016_update_01

Since last time, Malmö have overtaken Norrköping at the top, and the early surprise side Sundsvall have dropped to 6th. AIK, Kalmar and Häcken have climbed in the table, while Djurgården, Hammarby and Helsingborg have done the opposite. Gefle and Falkenberg still struggle at the bottom.

2016_update_02

Shots-wise the league seems to have settled, as only Elfsborg and Göteborg have changed quadrants since the last update. Also, Malmö’s gap to the other clubs has decreased.

2016_update_03

Looking at effectiveness in attack, we can see partially why some sides have climbed or dropped in the league table. Malmö and Häcken have enjoyed some efficient scoring, moving them from ‘wasteful’ into the ‘constant threat’ quadrant, while Djurgården have done the opposite.

2016_update_04

Defensively, we see how AIK have been more effective at the back together with Sundsvall and Jönköpings Södra, while Djurgården’s performance has worsened.

2016_update_05

Looking at xG, we see how AIK have overtaken Malmö as the best attacking side, but have at the same time moved into the  ‘worse defence’ half. Hammarby’s attacking numbers have dropped while Falkenberg have performed better. Östersund and Örebro still sit at opposite ends, with the former involved in some low xG games and the latter producing some xG-fests with both defensive and attacking xG at about 1.8 per game.

2016_update_06

Malmö are still at the top of the xGD table, but have dropped a bit from their >1.0 from last time. Kalmar have climbed to third while Djurgården and AIK have dropped. The bottom three remain the same as last time.

2016_update_07

2016_update_08

Looking at Expected Points for a ‘fair’ table based on the shots taken and conceded so far, we see how Malmö are still at the top while Gefle are stuck at the bottom. Göteborg have overtaken AIK in the top three, while Kalmar have climbed by about 8 points out of 12 possible.

2016_update_09

A note on Expected Points Performance: Winning teams will always outperform their Expected Points, as picking up all 3 points will usually be above expectation as no team dominate a game so much as to warrant a 100% win probability. The same goes for teams who consistently lose, as 0 points will usually be below expectation.

2016_update_100

Looking at time spent in Game States, we see how Gefle have spent just about 10% of the season in the lead so far. Helsingborg and Häcken have spent little time drawing while Sundsvall still have spent very little time trailing.

2016_update_11

Just with like the actual league table, there some big differences in the prediction compared to the last update, showing how difficult it can be to predict the league this early into the season. Mid-table has really opened up since last time, but the top 2 and bottom 3 remains the same.

Long-term trends and managerial changes

Usually, I would’ve ended the post here but as two managers have been sacked since the last update, I thought it would be interesting to see how AIK and Gefle have performed under Andreas Alm and Roger Sandberg respectively. I won’t comment on these plots more than that Alm likely had to leave because of politics and disputes at the club, while Sandberg was sacked due to Gefle’s poor results.

long_term_AIK

long_term_GEF

Another Allsvenskan 2016 update

Allsvenskan 2016 update

With three rounds of Allsvenskan games played since my last post, it’s time for an update. Like last time, I’m just going to throw a few visualizations at you together with my initial thoughts without going too much in-depth.

Starting out with the league table, we see just how close the league has been so far – with eight games played, only four points separate Östersund in 11th place from Malmö in 2nd.

allsv_update_01_01

We can also see some interesting streaks since last time, with Norrköping and Elfsborg winning all three games while Hammarby, Gefle and Falkenberg have been struggling. Looking at the early surprise teams we see that Sundsvall have continued to perform well while Jönköpings Södra have dropped in the table.

allsv_update_01_02Looking at shots we see how Hammarby, Kalmar and Norrköping have all moved in to the ‘busy attack, quit defence’ quadrant, indicating that they’ve played a bit better lately (or faced easier opposition!), while Sundsvall is still stuck in the ‘quiet attack, busy defence’ quadrant.

allsv_update_01_03While Malmö produces a lot of shots, they’re still one of the most ineffective sides up front. Göteborg and Norrköping on the other hand are enyoing some effective scoring at the moment.

allsv_update_01_04Sundsvall are still conceding a lot of shots, but at least they’re not converted into goals very often – which in part explains their good results so far. Elfsborg have moved into the ‘formidable’ defensive quadrant, only conceding one goal in the last three games.

allsv_update_01_05Looking at Expected Goals, Malmö are still the clearly best team, with Norrköping improving while Djurgården have dropped a bit. Here we really see the difference between the early surprise teams’ performance recently, as Sundsvall have improved both attacking and defensive numbers while Jönköpings Södra have done the opposite.

So how would the teams rank xG-wise? Expected Goals Difference should do well as measure of skill, and here we again see how the model ranks Malmö as the best side so far, with Norrköping and AIK the main contenders. A bottom three of Helsingborg, Gefle and Falkenberg have also emerged.

allsv_update_01_06

Another way of evaluating the teams’ performance so far is to simulate how many points on average each team would’ve received from their games. To do this I’ve used the shots from each game to simulate the result 10,000 times and the teams have then been awarded Expected Points based on the derived 1X2 probabilities.

For example, if the simulation would come up with probabilities of 0.5, 0.3 and 0.2 for each outcome then the home side would be awarded 0.5*3 + 0.3*1 or 1.8 Expected Points, while the away side would get 0.2*3 + 0.3*1, or 0.9 Expected Points.

Here’s a table of the team’s Expected Points so far:

allsv_update_01_07But a team can’t get 1.8 points from a game, only 0, 1 or 3 – so how have the teams performed compared to their Expected Points?

allsv_update_01_08Note: Malmö have been awarded a 3-0 win against Göteborg as the game was abandoned due to home fans throwing pyrotechnics towards a Malmö player. These points have been included.

Here we see how Helsingborg and Sundsvall have taken quite a lot more points than expected, while Falkenberg and Kalmar have done the opposite. This could be the result of some good/bad luck, but it can also mean that the model fail to properly assess the quality of these teams.

Let’s dig deeper and have a look at the Expected Points distribution of each team:

allsv_update_01_10Looking at these distributions we can see just how extreme the results have been for some of the teams so far. In fact, my model estimates that if we re-played Helsingborg’s games 10,000 times, they would get 13 points or more only about 5% of the time!

Lastly, here’s my updated prediction of the final Allsvenskan 2016 table:

allsv_update_01_09

That’s it for now. I hope to be back with another update when the league have gone on break for Euro 2016, and maybe I’ll look closer at individual players then.

 

Allsvenskan 2016 update

Allsvenskan 2016 so far

With 5 rounds of games played I thought it would be a good time to look at how the 2016 Allsvenskan is going. Let’s have a look at the league table so far:

2016_00

True to it’s rather unexpected nature, the opening five rounds of the 2016 Allsvenskan have seen some surprises, and I don’t think anyone expected Sundsvall and newly-promoted Jönköpings Södra to be at the top! Also, last year’s top team’s have been struggling a bit, but seem to have picked up the pace lately.

But nevermind the table – altough it never lies, it does give an unfair view of the teams’ underlying performances, especially with so few games played. To really have a look at how the team’s been coming along so far I’ve reproduced some of Ben Mayhew‘s beautiful scatterplots:

2016_01

Looking at shots taken and conceded per game we can see how Malmö, Djurgården and AIK have dominated their games so far, outshooting their opponent’s by some marginal. League leaders Sundsvall have, given their results, surprisingly spent most of their time in defence – but that’s just how Allsvenskan is.

 

2016_02

When looking closer at shooting effectiveness we see that surprise teams Sundsvall and Jönköpings Södra have been clinical in front of goal so far, partly explaining their results. Häcken on the other hand have really struggled to score.

 

2016_03

Looking at defensive effectiveness we can really see why Sundsvall are at the top of the Allsvenskan table. While spending a lot of time in defence, they’ve managed to concede very few goals given their shots faced. If this is down to some new tactic, skill or simply dumb luck remains to be seen – but for a team like Sundsvall I’m willing to say it’s the latter.

 

2016_04

Expected Goals-wise we see just how lucky Sundsvall have been so far. They’ve conceded a lot of xG while failing to produce up front, putting them in the same group as struggling sides Falkenberg, Häcken, Helsingborg and Gefle. Malmö is at the other side of the scale, producing a lot of high-quality chances while keeping a tight defence.

Another interesting thing to look at is time spent in Game States. As a result of their good performance (or luck!) so far, Sundsvall have only spent about 1% of minutes played losing so far while Gefle have only spent 10% in the lead!

2016_05

What about a prediction for the rest of the season then? I’ve used the games so far to fire up my league table simulation based on my Monte Carlo xG game simulation, and this is the result:

predict_2016_05

Note: The first table posted here was wrong due to a minor error in the code. This is the correct table.

As a Djurgården supporter, I kinda like the result – even though I think it’s a bit unrealistic for us to compete for silverware just yet. And anyways, a simulation of the whole season based on only 5 games tells more about what has happened so far than what we’ll see in the future, at least in my opinion.

The model clearly ranks Malmö as the best team in the league, as it’s done pretty much every season in my database, alongside AIK and Göteborg. Both the newly promoted teams, Östersund and Jönköpings Södra, seem competent xG-wise and have a good chance of staying up, while reigning champions Norrköping seem to be performing worse than last year. Gefle are always in the bottom of these kind of tables, but nevertheless seem to outsmart every metric available to avoid relegation season after season – but maybe this is the year they finally drop down to Superettan?

I’m planning to do these kind of updates at regular intervals, and maybe add some more plots and deeper analysis, but this will have to do for now!

Allsvenskan 2016 so far