# Fstats

##### F Statistics

Computes a series of F statistics for a specified data window.

- Keywords
- regression

##### Usage

`Fstats(formula, from = 0.15, to = NULL, data = list(), vcov. = NULL)`

##### Arguments

- formula
a symbolic description for the model to be tested

- from, to
numeric. If

`from`

is smaller than 1 they are interpreted as percentages of data and by default`to`

is taken to be 1 -`from`

. F statistics will be calculated for the observations`(n*from):(n*to)`

, when`n`

is the number of observations in the model. If`from`

is greater than 1 it is interpreted to be the index and`to`

defaults to`n - from`

. If`from`

is a vector with two elements, then`from`

and`to`

are interpreted as time specifications like in`ts`

, see also the examples.- data
an optional data frame containing the variables in the model. By default the variables are taken from the environment which

`Fstats`

is called from.- vcov.
a function to extract the covariance matrix for the coefficients of a fitted model of class

`"lm"`

.

##### Details

For every potential change point in `from:to`

a F statistic (Chow
test statistic) is computed. For this an OLS model is fitted for the
observations before and after the potential change point, i.e. `2k`

parameters have to be estimated, and the error sum of squares is computed (ESS).
Another OLS model for all observations with a restricted sum of squares (RSS) is
computed, hence `k`

parameters have to be estimated here. If `n`

is
the number of observations and `k`

the number of regressors in the model,
the formula is:

$$F = \frac{(RSS - ESS)}{ESS/(n - 2 k)}$$

Note that this statistic has an asymptotic chi-squared distribution with k degrees of freedom and (under the assumption of normality) F/k has an exact F distribution with k and n - 2k degrees of freedom.

##### Value

`Fstats`

returns an object of class `"Fstats"`

, which contains
mainly a time series of F statistics. The function `plot`

has a
method to plot the F statistics or the
corresponding p values; with `sctest`

a
supF-, aveF- or expF-test on structural change can be performed.

##### References

Andrews D.W.K. (1993), Tests for parameter instability and structural
change with unknown change point, *Econometrica*, **61**, 821-856.

Hansen B. (1992), Tests for parameter instability in regressions with I(1)
processes, *Journal of Business & Economic Statistics*, **10**, 321-335.

Hansen B. (1997), Approximate asymptotic p values for structural-change
tests, *Journal of Business & Economic Statistics*, **15**, 60-67.

##### See Also

##### Examples

```
# NOT RUN {
## Nile data with one breakpoint: the annual flows drop in 1898
## because the first Ashwan dam was built
data("Nile")
plot(Nile)
## test the null hypothesis that the annual flow remains constant
## over the years
fs.nile <- Fstats(Nile ~ 1)
plot(fs.nile)
sctest(fs.nile)
## visualize the breakpoint implied by the argmax of the F statistics
plot(Nile)
lines(breakpoints(fs.nile))
## UK Seatbelt data: a SARIMA(1,0,0)(1,0,0)_12 model
## (fitted by OLS) is used and reveals (at least) two
## breakpoints - one in 1973 associated with the oil crisis and
## one in 1983 due to the introduction of compulsory
## wearing of seatbelts in the UK.
data("UKDriverDeaths")
seatbelt <- log10(UKDriverDeaths)
seatbelt <- cbind(seatbelt, lag(seatbelt, k = -1), lag(seatbelt, k = -12))
colnames(seatbelt) <- c("y", "ylag1", "ylag12")
seatbelt <- window(seatbelt, start = c(1970, 1), end = c(1984,12))
plot(seatbelt[,"y"], ylab = expression(log[10](casualties)))
## compute F statistics for potential breakpoints between
## 1971(6) (corresponds to from = 0.1) and 1983(6) (corresponds to
## to = 0.9 = 1 - from, the default)
## compute F statistics
fs <- Fstats(y ~ ylag1 + ylag12, data = seatbelt, from = 0.1)
## this gives the same result
fs <- Fstats(y ~ ylag1 + ylag12, data = seatbelt, from = c(1971, 6),
to = c(1983, 6))
## plot the F statistics
plot(fs, alpha = 0.01)
## plot F statistics with aveF boundary
plot(fs, aveF = TRUE)
## perform the expF test
sctest(fs, type = "expF")
# }
```

*Documentation reproduced from package strucchange, version 1.5-1, License: GPL-2 | GPL-3*