I'm very keen on sports and am just starting to understand how I can start to apply maths to sports related problems and issues. I'm keen to get some pointers in the right direction for the linear regressions I have run, and (linear) weights I am trying to derive for goals scored in the English Premiership.

Sabremetrics (http://en.wikipedia.org/wiki/Sabremetrics) style studies have been carried out on various sports but have never really caught on for football/soccer. To try and assist this, a club recently released the most comprehensive data set ever released for a whole season (over 200 variables for every player in all 20 teams) to try and aid analytical studies into the game. In short as it is relatively easy to do (on a basic level with Excel) I was keen to run regressions on the data to try and determine linear weights for defining goals scored in a predictive model (so you could effectively value a player - e.g. above or below the models prediction or make projections for what they could score in a season or who was more valuable).

I grouped the data so it gave season long data for all 538 players who played in the 2011/12 season (instead of by individual game). I then cut out all players who played less than 1000 minutes (about 25% of the season), and scored less than 5 goals (to try and remove potential outliers). This reduced the data set to only 65 players.

I then went through the variables and removed any variables that were not relevant (e.g. number of goalkeeper punches, wouldn't govern how many goals a player would score - as the player would have a value of 0 for this as he is an outfield player and not a goalkeeper). I then started running regressions and cut out every variable with a p value greater than 0.05 (e.g. statistically insignificant). This has then left me with a variety of different options with r2 values between 0.84 and 0.89 (depending on slight changes to variables).

http://img253.imageshack.us/img253/7638/revcreg6r2896.jpg (was the last regression I ran before running it with solely significant variables - highest r2 value at 0.896)

http://img820.imageshack.us/img820/8695/revcreg7ar2848.jpg (was taking the regression above and dropping "big chances" making all variables significant and giving an r2 of 0.848)

http://img4.imageshack.us/img4/4255/revcreg7br2868.jpg (was adding "big chances" back in, as it had been significant when I was going through all of the variables and was only marginal insignificant at 0.16 in the first image - gives an r2 of 0.868).

http://img594.imageshack.us/img594/7743/revdreg7cr2881.jpg (was adding "attempts from set play on target" back in as it had a similar p value to "big chances" - gives an r2 of 0.881).

All of the above has given me a number of questions that I would be grateful for some advice on:

Is what I am trying to do flawed (e.g. am I wrong to try and apply regression analysis to this)?

Is an r2 in excess of 0.84 satisfactory to accept and take forward to test on a larger data set over more years?

The "shots on target including goals" variable includes goals scored - so can I use it an independent variable to try and determine "goals" scored - which I am treating as the dependent variable? (the same would also apply to "attempts from open play on target" but oddly this comes out as a negative coefficient where as the shots on target which effectively includes the same data comes out as positive).

"big chances" (e.g. big chances to score) was significant through the first couple of regressions I ran, before coming out with a p-value of 0.16 in the first regression above - it was significant so should I still treat it as significant (as including it results in a better r2)?

"fouls won penalty" (e.g. foul committed on the player that results in a penalty) is significant but I would expect this to be a positive coefficient (assuming the player took and scored the penalty). Given the lack of clarification on the variable (I just can't see that this should be strongly negative) should I remove this?

Hopefully I have been fairly clear on what I've been trying to do, and I would be grateful for any nudges in the right direction and advice imparted.



1 Answer 1


A linear regression model could make sense here. R square is a reasonable measure of goodness of fit if the sample size is large relative to the number of parameters. If the number of parameters in the model is large R square can be deceptively high. Adjusted R square gives a better idea,

Model fitting should not be based on individual p-values of the regression coefficients. Those p-value can depend on the other variables in the model. Stepwise selection procedures that penalize overfitting like AIC or BIC should be used.

Narrowing down the choice of predictors based on knowledge of soccer is a very good idea. These are just a few basic principles. Modeling assumptions such as normal error terms and constant variance are important to check. There are also diagnostics that can be used to identify problems such as multicolinearity and individual or a small number of observations that have heavy influence on the model parameters. This can happen if there are outliers or point located in the x space that are called leverage points.

  • $\begingroup$ Adjusted R Squared (R2) is within about 0.03 of R2 in all cases (so above 0.837 in all examples). Really helpful to know about things like AIB and BIC, and I'm sure I can probably work these into my Excel sheet. Also really helpful comment about p-values. I've tried re-working things where the p-value is less than 0.2 and it seems like it should fit (e.g. "big chances" appearing initially significant and then not - and then when included again in the 3rd image it became significant again). I've recorded the p-values of all variables that I have dropped out so may start re-including some. $\endgroup$
    – user8812
    Commented Aug 23, 2012 at 21:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.