Solved – Interpreting the spread-level plot from R

data visualizationrregressionresiduals

I created a spreadlevel plot on my simple linear regression model in R. Here is my code,

spreadLevelPlot(ols_reg)

where ols_reg is my regression model, ols_reg <- lm(y~0+.,dat). I first encountered spread-level plots from this link, but I don't fully understand how to read the plot and what to do with the transformation this function provides. Suggested power transformation: 0.718

This is how my plot looks,

enter image description here

How do I read it?

These are the libraries I included in my script.

library(car)
library(MASS)
library(lmtest)

Best Answer

Such a displays should not be read without looking at the other diagnostic displays, since its interpretation relies on certain other things holding.

Other things being as they should, the increasing trend in this plot - which is saying that the absolute residuals are getting larger as the fitted values do - would indicate a spread that's related to the mean, a violation of the assumptions (the plot is used to assess potential heteroskedasticity).

[However, the increase in spread in this plot suggests the residuals might be becoming more leptokurtic as well.]

The big question is what else is going on. If the assumptions about the mean don't hold, it's a waste of time looking at this display, since problems with the model's description of the mean will percolate into affecting this display, qq-plots of residuals and so on. You have to get the mean right before considering variance (potential heteroskedasticity); you have to get variance right before you consider any distributional assumptions and so on.