Regression (OLS)
This page offers all the basic information you need about regression analysis. It is part of Statkat’s wiki module, containing similarly structured info pages for many different statistical methods. The info pages give information about null and alternative hypotheses, assumptions, test statistics and confidence intervals, how to find p values, SPSS how-to’s and more.
To compare regression analysis with other statistical methods, go to Statkat's or practice with regression analysis at Statkat's
Contents
- 1. When to use
- 2. Null hypothesis
- 3. Alternative hypothesis
- 4. Assumptions
- 5. Test statistic
- 6. Sample standard deviation of the residuals $s$
- 7. Sampling distribution
- 8. Significant?
- 9. $C\%$ confidence interval for $\beta_k$ and for $\mu_y$, $C\%$ prediction interval for $y_{new}$
- 10. Effect size
- 11. Visual representation
- 12. ANOVA table
- 13. Example context
- 14. SPSS
- 15. Jamovi
When to use?
Deciding which statistical method to use to analyze your data can be a challenging task. Whether a statistical method is appropriate for your data is partly determined by the measurement level of your variables.
Regression analysis requires the following variable types:
Independent variables: One or more quantitative of interval or ratio level and/or one or more categorical with independent groups, transformed into code variables | Dependent variable: One quantitative of interval or ratio level |
Note that theoretically, it is always possible to 'downgrade' the measurement level of a variable. For instance, a test that can be performed on a variable of ordinal measurement level can also be performed on a variable of interval measurement level, in which case the interval variable is downgraded to an ordinal variable. However, downgrading the measurement level of variables is generally a bad idea since it means you are throwing away important information in your data (an exception is the downgrade from ratio to interval level, which is generally irrelevant in data analysis).
If you are not sure which method you should use, you might like the assistance of our method selection tool or our method selection table.
Null hypothesis
Regression analysis tests the following null hypothesis (H0):
$F$ test for the complete regression model:- H0: $\beta_1 = \beta_2 = \ldots = \beta_K = 0$
or equivalenty - H0: the variance explained by all the independent variables together (the complete model) is 0 in the population, i.e. $\rho^2 = 0$
- H0: $\beta_k = 0$
Alternative hypothesis
Regression analysis tests the above null hypothesis against the following alternative hypothesis (H1 or Ha):
$F$ test for the complete regression model:- H1: not all population regression coefficients are 0
or equivalenty - H1: the variance explained by all the independent variables together (the complete model) is larger than 0 in the population, i.e. $\rho^2 > 0$
- H1 two sided: $\beta_k \neq 0$
- H1 right sided: $\beta_k > 0$
- H1 left sided: $\beta_k < 0$
Assumptions
Statistical tests always make assumptions about the sampling procedure that was used to obtain the sample data. So called parametric tests also make assumptions about how data are distributed in the population. Non-parametric tests are more 'robust' and make no or less strict assumptions about population distributions, but are generally less powerful. Violation of assumptions may render the outcome of statistical tests useless, although violation of some assumptions (e.g. independence assumptions) are generally more problematic than violation of other assumptions (e.g. normality assumptions in combination with large samples).
Regression analysis makes the following assumptions:
- In the population, the residuals are normally distributed at each combination of values of the independent variables
- In the population, the standard deviation $\sigma$ of the residuals is the same for each combination of values of the independent variables (homoscedasticity)
- In the population, the relationship between the independent variables and the mean of the dependent variable $\mu_y$ is linear. If this linearity assumption holds, the mean of the residuals is 0 for each combination of values of the independent variables
- The residuals are independent of one another
- Variables are measured without error
- Multicollinearity
- Outliers
Test statistic
Regression analysis is based on the following test statistic:
$F$ test for the complete regression model:- $
\begin{aligned}[t]
F &= \dfrac{\sum (\hat{y}_j - \bar{y})^2 / K}{\sum (y_j - \hat{y}_j)^2 / (N - K - 1)}\\
&= \dfrac{\mbox{sum of squares model} / \mbox{degrees of freedom model}}{\mbox{sum of squares error} / \mbox{degrees of freedom error}}\\
&= \dfrac{\mbox{mean square model}}{\mbox{mean square error}}
\end{aligned}
$
where $\hat{y}_j$ is the predicted score on the dependent variable $y$ of subject $j$, $\bar{y}$ is the mean of $y$, $y_j$ is the score on $y$ of subject $j$, $N$ is the total sample size, and $K$ is the number of independent variables.
-
$t = \dfrac{b_k}{SE_{b_k}}$
- If only one independent variable:
$SE_{b_1} = \dfrac{\sqrt{\sum (y_j - \hat{y}_j)^2 / (N - 2)}}{\sqrt{\sum (x_j - \bar{x})^2}} = \dfrac{s}{\sqrt{\sum (x_j - \bar{x})^2}}$
with $s$ the sample standard deviation of the residuals, $x_j$ the score of subject $j$ on the independent variable $x$, and $\bar{x}$ the mean of $x$. For models with more than one independent variable, computing $SE_{b_k}$ is more complicated.
- If only one independent variable:
Note 2: if there is only one independent variable in the model ($K = 1$), the $F$ test for the complete regression model is equivalent to the two sided $t$ test for $\beta_1.$
Sample standard deviation of the residuals $s$
$\begin{aligned} s &= \sqrt{\dfrac{\sum (y_j - \hat{y}_j)^2}{N - K - 1}}\\ &= \sqrt{\dfrac{\mbox{sum of squares error}}{\mbox{degrees of freedom error}}}\\ &= \sqrt{\mbox{mean square error}} \end{aligned} $Sampling distribution
Sampling distribution of $F$ and of $t$ if H0 were true:Sampling distribution of $F$:
- $F$ distribution with $K$ (df model, numerator) and $N - K - 1$ (df error, denominator) degrees of freedom
- $t$ distribution with $N - K - 1$ (df error) degrees of freedom
Significant?
This is how you find out if your test result is significant:
$F$ test:- Check if $F$ observed in sample is equal to or larger than critical value $F^*$ or
- Find $p$ value corresponding to observed $F$ and check if it is equal to or smaller than $\alpha$
- Check if $t$ observed in sample is at least as extreme as critical value $t^*$ or
- Find two sided $p$ value corresponding to observed $t$ and check if it is equal to or smaller than $\alpha$
- Check if $t$ observed in sample is equal to or larger than critical value $t^*$ or
- Find right sided $p$ value corresponding to observed $t$ and check if it is equal to or smaller than $\alpha$
- Check if $t$ observed in sample is equal to or smaller than critical value $t^*$ or
- Find left sided $p$ value corresponding to observed $t$ and check if it is equal to or smaller than $\alpha$
$C\%$ confidence interval for $\beta_k$ and for $\mu_y$, $C\%$ prediction interval for $y_{new}$
Confidence interval for $\beta_k$:-
$b_k \pm t^* \times SE_{b_k}$
- If only one independent variable:
$SE_{b_1} = \dfrac{\sqrt{\sum (y_j - \hat{y}_j)^2 / (N - 2)}}{\sqrt{\sum (x_j - \bar{x})^2}} = \dfrac{s}{\sqrt{\sum (x_j - \bar{x})^2}}$
- If only one independent variable:
-
$\hat{y} \pm t^* \times SE_{\hat{y}}$
- If only one independent variable:
$SE_{\hat{y}} = s \sqrt{\dfrac{1}{N} + \dfrac{(x^* - \bar{x})^2}{\sum (x_j - \bar{x})^2}}$
- If only one independent variable:
-
$\hat{y} \pm t^* \times SE_{y_{new}}$
-
If only one independent variable:
$SE_{y_{new}} = s \sqrt{1 + \dfrac{1}{N} + \dfrac{(x^* - \bar{x})^2}{\sum (x_j - \bar{x})^2}}$
-
If only one independent variable:
Effect size
Complete model:- Proportion variance explained $R^2$:
Proportion variance of the dependent variable $y$ explained by the sample regression equation (the independent variables):
$$ \begin{align} R^2 &= \dfrac{\sum (\hat{y}_j - \bar{y})^2}{\sum (y_j - \bar{y})^2}\\ &= \dfrac{\mbox{sum of squares model}}{\mbox{sum of squares total}}\\ &= 1 - \dfrac{\mbox{sum of squares error}}{\mbox{sum of squares total}}\\ &= r(y, \hat{y})^2 \end{align} $$
$R^2$ is the proportion variance explained in the sample by the sample regression equation. It is a positively biased estimate of the proportion variance explained in the population by the population regression equation, $\rho^2$. If there is only one independent variable, $R^2 = r^2$: the correlation between the independent variable $x$ and dependent variable $y$ squared. - Wherry's $R^2$ / shrunken $R^2$:
Corrects for the positive bias in $R^2$ and is equal to $$R^2_W = 1 - \frac{N - 1}{N - K - 1}(1 - R^2)$$
$R^2_W$ is a less biased estimate than $R^2$ of the proportion variance explained in the population by the population regression equation, $\rho^2.$ - Stein's $R^2$:
Estimates the proportion of variance in $y$ that we expect the current sample regression equation to explain in a different sample drawn from the same population. It is equal to $$R^2_S = 1 - \frac{(N - 1)(N - 2)(N + 1)}{(N - K - 1)(N - K - 2)(N)}(1 - R^2)$$
- Correlation squared $r^2_k$: the proportion of the total variance in the dependent variable $y$ that is explained by the independent variable $x_k$, not corrected for the other independent variables in the model
- Semi-partial correlation squared $sr^2_k$: the proportion of the total variance in the dependent variable $y$ that is uniquely explained by the independent variable $x_k$, beyond the part that is already explained by the other independent variables in the model
- Partial correlation squared $pr^2_k$: the proportion of the variance in the dependent variable $y$ not explained by the other independent variables, that is uniquely explained by the independent variable $x_k$
Visual representation
Regression equations with:ANOVA table
This is how the entries of the ANOVA table are computed:
Example context
Regression analysis could for instance be used to answer the question:
Can mental health be predicted from fysical health, economic class, and gender?SPSS
How to perform a regression analysis in SPSS:
Analyze > Regression > Linear...- Put your dependent variable in the box below Dependent and your independent (predictor) variables in the box below Independent(s)
Jamovi
How to perform a regression analysis in jamovi:
Regression > Linear Regression- Put your dependent variable in the box below Dependent Variable and your independent variables of interval/ratio level in the box below Covariates
- If you also have code (dummy) variables as independent variables, you can put these in the box below Covariates as well
- Instead of transforming your categorical independent variable(s) into code variables, you can also put the untransformed categorical independent variables in the box below Factors. Jamovi will then make the code variables for you 'behind the scenes'