Let's say one of the predictor variables in a regression model is 3-point shooting percentage. However, some of the observations (players) only have one or two attempts while others have several more. In a regression model, what are some techniques so the ability demonstrated over a large number of attempts will be awarded a relatively larger magnitude value than in cases where there are less attempts?

For example...

Player      3PA 3PM 3P%
Player 2    174 52  29.9%
Player 3    156 64  41.0%
Player 4    4   3   75.0%
Player 5    134 45  33.6%

Player #4's low sample size is not as reliable as the other observations but it's not meaningless. Are there transformations or other techniques for handling this?

  • $\begingroup$ Typically in regression problems the predictors are assumed to be measured without error; errors-in-variables regression is often rather complicated ... I can't think of a really simple way of handling this. $\endgroup$ – Ben Bolker Sep 15 '18 at 1:42
  • $\begingroup$ I agree with Ben's suggestion that you are looking at an error-in-variables setting. That said for something super-simple, why not directly use Wilson-type lower/upper CIs (or the CI width) as predictors too? This would allow encoding the "trust" in a particular measurement $x_i$ directly. Yes, it will attenuate the effect of the 3P% variable but it will give us relevant information to work with in a straightforward way. So for the 4 players shown, using $\alpha-0.05$ we get a new surrogate variable 3P%LCI=[..., 0.236, 0.336, 0.301, 0.261,...] for a conservative value of shooting ability. $\endgroup$ – usεr11852 says Reinstate Monic Sep 17 '18 at 21:18

In this particular case, perhaps you could try fitting a model of the form $$\texttt{Outcome}_i = \beta_0 + \beta_1 \texttt{PM}_i + \beta_2 \texttt{PA}_i + \varepsilon_i.$$ The interpretation of the regression coefficient $\beta_1$ will be what is the expected change in the $\texttt{Outcome}$ if $\texttt{PM}$ is increased by one unit but for players with the same $\texttt{PA}$.


I like the answer by @DimitrisRizopoulos. Here's another approach.

Fit a random-intercept only multilevel model to the shooting percentage data. The data should be in long form. Each row represents the outcome of a single trial, success/failure. So some individuals repeat on several rows, others appear for one or two rows, player 4 will appear on four rows, three of them with outcome 1 and a fourth with outcome 0. It can be a multilevel logistic or linear regression, don't think it matters very much, see comments at the bottom.

What you want to estimate here are the random intercepts for each individual. Individuals with a lot of measurements will have pretty much the same scores on the probability scale. Those with fewer measurements, we choose to believe them less, so their scores will be shrunk towards the grand mean of everyone. Then take these random intercepts as your x going forward to use in your next regression for your actual outcome.

This approach is not without problems. For one, the random intercepts you will pull out of the model are estimates only with their own uncertainties. But it is one way of expressing skepticism about the scores of individuals with very few measurements.

Additional issue, if using multilevel logistic, you can choose between using the random intercepts on the logit scale versus the random intercepts on the probability scale. If using the logit scale, you can use the random intercepts directly. If using the probability scale, you will first need shift the random intercepts by the intercept of your multilevel regression before the inverse-logit transformation to probabilities. Both approaches make conceptually different claims about the relationship between your ultimate outcome and this shooting variable. You can test which approach better satisfies linearity assumptions for your regression.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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