Error message

  • Warning: Undefined array key "und" in include_once() (line 34 of /var/www/html/docroot/sites/all/themes/t18v3z5/templates/inc/article-feature-video.php).
  • Warning: Trying to access array offset on value of type null in include_once() (line 34 of /var/www/html/docroot/sites/all/themes/t18v3z5/templates/inc/article-feature-video.php).
  • Warning: Trying to access array offset on value of type null in include_once() (line 34 of /var/www/html/docroot/sites/all/themes/t18v3z5/templates/inc/article-feature-video.php).
  • Deprecated function: Return type of Aws\HandlerList::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 32 of /var/www/html/vendor/aws/aws-sdk-php/src/HandlerList.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of & Aws\Endpoint\Partition::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Aws\Credentials\Credentials implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in include() (line 8 of /var/www/html/vendor/aws/aws-sdk-php/src/Credentials/Credentials.php).
  • Deprecated function: Return type of Aws\Command::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of & Aws\Command::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Result::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of & Aws\Result::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Warning: Undefined array key "nid" in views_handler_field_term_node_tid->pre_render() (line 98 of /var/www/html/docroot/sites/all/modules/views/modules/taxonomy/views_handler_field_term_node_tid.inc).
  • Warning: Undefined array key "nid" in views_handler_field_term_node_tid->pre_render() (line 98 of /var/www/html/docroot/sites/all/modules/views/modules/taxonomy/views_handler_field_term_node_tid.inc).
×

News

Mikel Arteta Gives A Stats Lesson That Doesn't Quite Add Up

2020 has been a rollercoaster year for many teams, but few clubs have experienced as many ups and downs this past year as Arsenal.

Last season's FA Cup champions are currently winless in their last seven matches and sitting 15th in the Premier League, which would be the worst finish since 1975-76 for the North London club.

The Gunners have five losses and two draws in their last seven matches, putting Mikel Arteta's status as Arsenal manager under heavy scrutiny. Arteta's response to this criticism was, while interesting, not entirely logical.

Arteta goes on to say: "There is something else apart from that. It is not just the performance on the pitch, it is something else that needs to go our way and at the moment it doesn't."

The basic sentiment here is that Arteta thinks Arsenal have been massively unlucky this season. Apparently, Arsenal provided its in-house stats for this press conference (maybe part of the reason for the team's poor performance), but let's break down Arteta's claim with some non-biased stats, courtesy of FBref:

Scores & Fixtures 2020-2021 Arsenal: Premier League Table
Round Venue Result GF GA Opponent xG xGA
Matchweek 1 Away W 3 0 Fulham 1.8 0.2
Matchweek 2 Home W 2 1 West Ham 1.4 1.9
Matchweek 3 Away L 1 3 Liverpool 1.2 3.0
Matchweek 4 Home W 2 1 Sheffield Utd 0.4 0.2
Matchweek 5 Away L 0 1 Manchester City 0.9 1.5
Matchweek 6 Home L 0 1 Leicester City 0.9 1.2
Matchweek 7 Away W 1 0 Manchester Utd 1.1 0.3
Matchweek 8 Home L 0 3 Aston Villa 1.5 1.7
Matchweek 9 Away D 0 0 Leeds United 0.9 2.5
Matchweek 10 Home L 1 2 Wolves 1.2 1.4
Matchweek 11 Away L 0 2 Tottenham 0.8 0.5
Matchweek 12 Home L 0 1 Burnley 1.5 0.9
Matchweek 13 Home D 1 1 Southampton 0.7 1.1
Matchweek 14 Away L 1 2 Everton 1.4 0.8
Provided by FBref.com: View Original Table
Generated 12/21/2020.

*Note: expected goals (xG) is a reactive stat that predicts how many goals a side should have scored based on the goal-scoring opportunities the team accumulated during a match*

As anticipated, not every Arsenal match this season has gone the way of the team with the higher expected goals (xG) total (why would we even watch soccer if that was the case?).

The Gunners defeated West Ham despite having a lower xG than the Hammers, drew Leeds United while having 1.6 xG less than their opponent and also drew Southampton with a -0.4 difference in expected goals. Arsenal also lost a few matches, against Spurs, Burnley and Everton, where it had the higher xG total. 

These three defeats (by 0.3, 0.6 and 0.6 expected goals, respectively), have occurred in the club's four most recent Premier League matches. Yet despite this unlucky run of form, Arsenal's expected goal difference over these three contests (+1.5) is still less than the -1.6 expected goal difference the Gunners had against Leeds, a match which they managed to draw 0-0. 

Arsenal's recent form may seem fluky, but based on their performances over the first part of the season, the club's results are indicative of the way Arteta's men have played on the pitch. For each Arsenal over-performance, there is an equal and opposite under-performance. While a club may be lucky over a game or string of games, this luck always evens out over a longer period.

League Table Table
Rk Squad MP W D L GF GA GDiff Pts xG xGA xGDiff xGDiff/90 Last 5
10 Club Crest West Ham 13 6 3 4 21 16 +5 21 17.7 17.7 0.0 0.00
11 Club Crest Wolves 13 6 2 5 13 17 -4 20 12.5 15.4 -2.9 -0.22
12 Club Crest Newcastle Utd 13 5 3 5 17 22 -5 18 14.1 17.8 -3.7 -0.28
13 Club Crest Crystal Palace 14 5 3 6 19 25 -6 18 14.3 18.3 -4.0 -0.29
14 Club Crest Leeds United 14 5 2 7 24 30 -6 17 25.6 27.1 -1.5 -0.11
15 Club Crest Arsenal 14 4 2 8 12 18 -6 14 15.7 17.2 -1.5 -0.11
16 Club Crest Brighton 14 2 6 6 16 22 -6 12 20.0 14.1 +5.8 +0.42
17 Club Crest Fulham 14 2 4 8 13 23 -10 10 15.8 21.6 -5.7 -0.41
18 Club Crest Burnley 12 2 4 6 6 18 -12 10 9.5 17.7 -8.2 -0.68
19 Club Crest West Brom 14 1 4 9 10 29 -19 7 8.4 26.2 -17.8 -1.27
20 Club Crest Sheffield Utd 14 0 2 12 8 25 -17 2 13.7 23.5 -9.8 -0.70
Provided by FBref.com: View Original Table
Generated 12/21/2020.

Here's the deal: If you're a good team, you out-play your opponent so you don't rely on luck to win matches. Sure, the stats say Arsenal lost three matches it should have won and that the Gunners' goal difference is 4.5 goals lower than their expected goal difference, but from an Arsenal perspective, you can't expect to win every close match.

Expected goals said that Arsenal should have won, but xG doesn't account for your strikers' inability to finish simple chances; that is more down to skill than luck.

Good sides also find a way to win close matches, even when the xG totals are not in their favor. Sometimes it's luck, but it's also about mental toughness and taking your chances when they come. 

Arsenal have yet to demonstrate either of these qualities this season, which is why the Gunners find themselves a mere whisker above the relegation zone.

Videos you might like