A **Chow test** is a statistical test developed by economist Gregory Chow that is used to test whether the coefficients in two different regression models on different datasets are equal.

The Chow test is typically used in the field of econometrics with time series data to determine if there is a structural break in the data at some point.

For example, consider the following scatterplot:

If we used one regression line to summarize the pattern in the data, it may look like this:

And if we used two separate regression lines to summarize the pattern in the data, it may look like this:

The Chow test allows us to test for whether or not the regression coefficients of each regression line are equal.

If the test determines that the coefficients are not equal between the regression lines, this means there is significant evidence that a structural break exists in the data. In other words, the pattern in the data is significantly different before and after that structural break point.

**When to use the Chow Test**

The following examples illustrate situations where you may wish to perform a Chow test:

**1. **To determine if stock prices change at different rates before and after an election.

**2. **To determine if housing prices change before and after an interest rate change.

**3.** To determine if the average profit of public companies is different before and after a new tax law is passed.

In each situation, we could use a Chow test to determine if there is a structural break point in the data at a certain point in time.

**Steps to Perform a Chow Test**

We can use the following steps to perform a Chow test.

**Step 1: Define the null and alternative hypotheses.**

Suppose we fit the following regression model to our entire dataset:

- y
_{t}= a + bx_{1t}+ cx_{t2}+ ε

Then suppose we split our data into two groups based on some structural break point and fit the following regression models to each group:

- y
_{t}= a_{1}+ b_{1}x_{1t}+ c_{1}x_{t2}+ ε - y
_{t}= a_{2}+ b_{2}x_{1t}+ c_{2}x_{t2}+ ε

We would use the following null and alternative hypotheses for the Chow test:

**Null (H**a_{0}):_{1}= a_{2}, b_{1}= b_{2}, and c_{1}= c_{2}**Alternative (H**At least one of the comparisons in the Null is not equal._{A}):

If we reject the null hypothesis, we have sufficient evidence to say that there is a structural break point in the data and two regression lines can fit the data better than one.

If we fail to reject the null hypothesis, we do not have sufficient evidence to say that there is a structural break point in the data. In this case, we say that the regression lines can be “pooled” into a single regression line that represents the pattern in the data sufficiently well.

**Step 2: Calculate the test statistic.**

If we define the following terms:

**S**The sum of squared residuals from the total data_{T}:**S**:The sum of squared residuals from each group_{1}, S_{2}**N**The number of observations in each group_{1}, N_{2}:**k:**The number of parameters

Then we can say that the Chow test statistic is:

Chow test statistic = [(S_{T }– (S_{1}+S_{2}))/k] / [(S_{1}+S_{2})/ (N_{1}+N_{2}-2k)]

This test statistic follows the F-distribution with *k* and and N_{1}+N_{2}-2k degrees of freedom.

**Step 3: Reject or fail to reject the null hypothesis.**

If the p-value associated with this test statistic is less than a certain significance level, we can reject the null hypothesis and conclude that there is a structural break point in the data.

Fortunately, most statistical software is capable of performing a Chow test so you will likely never have to perform the test by hand.

**Example of Performing a Chow Test**

Refer to this tutorial to see a step-by-step example of how to perform a Chow test for a given dataset in R.

**Notes on the Chow Test**

Here are a couple notes to keep in mind in regards to the Chow test:

**1.** The test assumes that the residuals of the regression models are independently and identically distributed from a normal distribution with unknown variance.

**2. **The Chow test should only be used when the structural break that you’d like to test for is at a *known* time. In other words, the test shouldn’t be used repeatedly to determine if any point in time can be considered a structural break.