How to Calculate Adjusted R-Squared in R

Spread the love

The coefficient of determination, or R^2, provides a measure of how well the predictors in a regression model explain the variance in the dependent variable. However, there is a significant caveat to R^2: it will always increase (or remain the same) as more predictors are added to the model, regardless of whether these predictors are truly meaningful. This can make R^2 somewhat misleading in multiple regression settings. To account for this, statisticians often turn to the adjusted R^2.

In this article, we’ll dive deep into the concept of the adjusted R^2, understand its significance, and learn how to calculate it in R.


  1. The Problem with R squared
  2. Introducing Adjusted R Squared
  3. Mathematical Background
  4. Calculating Adjusted R Squared in R
  5. Interpreting Adjusted R Squared
  6. Advantages and Limitations
  7. Conclusion

1. The Problem with R Squared:

While R^2 measures the proportion of variance explained by the predictors in a model, it comes with a caveat. Each time a predictor is added to the model, R^2 will either increase or remain the same, even if the predictor doesn’t significantly explain the dependent variable’s variance. This can give a false sense of a model’s goodness of fit.

2. Introducing Adjusted R Squared:

Adjusted R^2 accounts for the number of predictors in a model, adjusting the R^2 value based on the necessary predictors. It incorporates the model’s degrees of freedom and can decrease if predictors that don’t enhance the model’s fit are included.

3. Mathematical Background:

The formula for the adjusted R^2 is:


  • n is the total number of samples.
  • p is the number of predictors.

As you add more predictors, the denominator becomes smaller, and therefore the whole fraction becomes larger, reducing the value of adjusted R^2 if the new predictors aren’t improving the model’s fit.

4. Calculating Adjusted R Squared in R:

Thankfully, R simplifies the calculation of the adjusted R^2. Using the lm() function to run a regression, you can retrieve the adjusted R^2 from the model’s summary.

# Create some sample data
x1 <- c(1,2,3,4,5)
x2 <- c(5,3,1,3,2)
y <- c(2,4,5,4,5)

# Fit a multiple linear regression model
model <- lm(y ~ x1 + x2)

# Extract the adjusted R-squared value

This code returns the adjusted R^2 value for the model.

5. Interpreting Adjusted R Squared:

  • An adjusted R^2 closer to 1 indicates that a larger proportion of variance is explained by the model, after accounting for the number of predictors.
  • If adjusted R^2 is significantly lower than R^2, it may suggest that some predictors are not contributing to the model’s explanatory power and might be redundant.
  • Conversely, if they’re very close, it suggests that most of the predictors in the model are meaningful.

6. Advantages and Limitations:


  • Offers a more realistic value than R^2 in terms of explanatory power, especially in models with many predictors.
  • Helps in model selection, by favoring models that only include meaningful predictors.


  • Like R^2, adjusted R2R2 doesn’t indicate whether a regression model is appropriate.
  • Still doesn’t provide information on the effect size of each predictor.

7. Conclusion:

While R^2 is a commonly-used statistic to evaluate the fit of a regression model, it has its limitations, especially when dealing with multiple predictors. Adjusted R^2 provides a more nuanced view of the model’s fit by accounting for the number of predictors. In R, this value is readily accessible, making it easy for researchers and data analysts to incorporate it into their model evaluation processes.

Posted in RTagged

Leave a Reply