Here are our player ratings from Reading's hard-fought 0-0 draw away at Swansea City.

Rafael - 9

Returned to form after a patchy period with a man of the match display. Produced several exceptional, instinctive stops to keep his clean sheet intact. Andre Ayew will not want to see him again for a while!

Tom McIntyre - 8

Came close after stretching and volleying at goal from Michael Olise's cross. Had another couple of decent chances late on and looked keen to impress. Had a busy evening in a defensive capacity on the left but looked solid throughout.

Tomas Esteves - 6

Looked a little overloaded at points as Swansea targeted his flank but kept his composure well and looked to support the attacks in the latter stages as Reading finished strongly.

Tom Holmes - 7

Had a difficult evening against Andre Ayew who did have a fair few opportunities which but went unpunished. Had a lot of deliveries into the area to deal with and did so well. Mature in possession and made the right decision more often than not on the ball.

Michael Morrison - 9

An exemplary leaders performance from Morrison who dealt with the continual onslaught from the forwards. His positional play was spot on, always in the right spot to clear the danger. 

Andy Rinomhota - 5

Had an awful lot of running to do as Swansea held onto the ball for long stages. Looked to break up the play but didn't manage it to his usual high standards. Still, not a bad showing by any means.

Josh Laurent - 7

Tenacious and industrious from Laurent who put in a lot of important challenges to break up the play. 

Michael Olise - 6

Produced a couple of tantalising deliveries into the area but should have played the pass quicker as Reading had a rare break in the first half. Put in a very good shift out of possession and contributed to the defensive efforts.

Ovie Ejaria - 4

Too slow on the ball and easily crowded off it. Needed to show more physicality to stamp his mark on the game. Needed to do a bit more to support the defence.

Alfa Semedo - 4

Surrendered possession with a few poor touches and spurned a great chance to play Baldock in behind with a sloppy pass. Showed good energy to cover the ground but needed to do more to hold the ball up.

Sam Baldock - 4

Left chasing shadows for much of the game with Reading struggling to get out of their half for most of the time he was on the pitch. Nearly produced something on the rare occasion his forward runs was found, but Semedo couldn't pick out a return. 

SUBS

Sone Aluko - 4

Was shoehorned into a central role but struggled to make much of a mark off the bench.

John Swift - 6

Managed to spread the play well as Reading ended the game strongly. Keen to dictate the play.

Omar Richards - 6

Returned from a spell on the sidelines and looked lively on the left-wing, causing a few problems as he drove at the defence.