I am looking to predict the number of shots that are going to be made by soccer players in their next game.
Currently, I use multiple linear regression, where I regress my entire data set (shotdata
) for all c.300 players at once, with the following explanatory variables
av
= average (mean) shots in last 5 games
po
= possession during the games
ha
= dummy variable whether the player is playing home or away
such that:
lm(shots ~ av + po + ha, data = shotdata)
I then predict one observation , for each player, after plugging in relevant values for (predicted) possession and whether the player is playing home/away.
I am looking to improve my model, however; given that shots are count data and seem to follow a Poisson distribution:
I have tried using a Poisson regression model, such that:
glm(shots ~ av + po + ha, data = shotdata, family = “poisson”)
On an initial, layman, inspection of the results, however, this model does not seem to offer an improvement in prediction. The response residuals it is generating are about 15% higher than those from the multiple linear regression and simple eyeballing of the predictions suggests they are not as strong as those from the multiple linear regression.
Might this not be an appropriate application of the Poisson regression? Is there something I’m obviously doing wrong with the Poisson distribution? Are there other methods for determining the comparative strengths of the model I should look at?
av
values. $\endgroup$modelname$fitted
as opposed topredict(modelname, type = "response")
$\endgroup$