linear.hypothesis.systemfit: Test Linear Hypothesis In systemfit: Estimating Systems of Simultaneous Equations

Description

Testing linear hypothesis on the coefficients of a system of equations by an F-test or Wald-test.

Usage

 1 2 3 4  ## S3 method for class 'systemfit' linearHypothesis( model, hypothesis.matrix, rhs = NULL, test = c( "FT", "F", "Chisq" ), vcov. = NULL, ... ) 

Arguments

 model a fitted object of type systemfit. hypothesis.matrix matrix (or vector) giving linear combinations of coefficients by rows, or a character vector giving the hypothesis in symbolic form (see documentation of linearHypothesis in package "car" for details). rhs optional right-hand-side vector for hypothesis, with as many entries as rows in the hypothesis matrix; if omitted, it defaults to a vector of zeroes. test character string, "FT", "F", or "Chisq", specifying whether to compute Theil's finite-sample F test (with approximate F distribution), the finite-sample Wald test (with approximate F distribution), or the large-sample Wald test (with asymptotic Chi-squared distribution). vcov. a function for estimating the covariance matrix of the regression coefficients or an estimated covariance matrix (function vcov is used by default). ... further arguments passed to linearHypothesis.default (package "car").

Details

Theil's F statistic for sytems of equations is

F = \frac{ ( R \hat{b} - q )' ( R ( X' ( Σ \otimes I )^{-1} X )^{-1} R' )^{-1} ( R \hat{b} - q ) / j }{ \hat{e}' ( Σ \otimes I )^{-1} \hat{e} / ( M \cdot T - K ) }

where j is the number of restrictions, M is the number of equations, T is the number of observations per equation, K is the total number of estimated coefficients, and Σ is the estimated residual covariance matrix. Under the null hypothesis, F has an approximate F distribution with j and M \cdot T - K degrees of freedom (Theil, 1971, p. 314).

The F statistic for a Wald test is

F = \frac{ ( R \hat{b} - q )' ( R \, \widehat{Cov} [ \hat{b} ] R' )^{-1} ( R \hat{b} - q ) }{ j }

Under the null hypothesis, F has an approximate F distribution with j and M \cdot T - K degrees of freedom (Greene, 2003, p. 346).

The χ^2 statistic for a Wald test is

W = ( R \hat{b} - q )' ( R \widehat{Cov} [ \hat{b} ] R' )^{-1} ( R \hat{b} - q )

Asymptotically, W has a χ^2 distribution with j degrees of freedom under the null hypothesis (Greene, 2003, p. 347).

Value

An object of class anova, which contains the residual degrees of freedom in the model, the difference in degrees of freedom, the test statistic (either F or Wald/Chisq) and the corresponding p value. See documentation of linearHypothesis in package "car".

Author(s)

Arne Henningsen [email protected]

References

Greene, W. H. (2003) Econometric Analysis, Fifth Edition, Prentice Hall.

Theil, Henri (1971) Principles of Econometrics, John Wiley & Sons, New York.

systemfit, linearHypothesis (package "car"), lrtest.systemfit
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 data( "Kmenta" ) eqDemand <- consump ~ price + income eqSupply <- consump ~ price + farmPrice + trend system <- list( demand = eqDemand, supply = eqSupply ) ## unconstrained SUR estimation fitsur <- systemfit( system, method = "SUR", data=Kmenta ) # create hypothesis matrix to test whether beta_2 = \beta_6 R1 <- matrix( 0, nrow = 1, ncol = 7 ) R1[ 1, 2 ] <- 1 R1[ 1, 6 ] <- -1 # the same hypothesis in symbolic form restrict1 <- "demand_price - supply_farmPrice = 0" ## perform Theil's F test linearHypothesis( fitsur, R1 ) # rejected linearHypothesis( fitsur, restrict1 ) ## perform Wald test with F statistic linearHypothesis( fitsur, R1, test = "F" ) # rejected linearHypothesis( fitsur, restrict1 ) ## perform Wald-test with chi^2 statistic linearHypothesis( fitsur, R1, test = "Chisq" ) # rejected linearHypothesis( fitsur, restrict1, test = "Chisq" ) # create hypothesis matrix to test whether beta_2 = - \beta_6 R2 <- matrix( 0, nrow = 1, ncol = 7 ) R2[ 1, 2 ] <- 1 R2[ 1, 6 ] <- 1 # the same hypothesis in symbolic form restrict2 <- "demand_price + supply_farmPrice = 0" ## perform Theil's F test linearHypothesis( fitsur, R2 ) # accepted linearHypothesis( fitsur, restrict2 ) ## perform Wald test with F statistic linearHypothesis( fitsur, R2, test = "F" ) # accepted linearHypothesis( fitsur, restrict2 ) ## perform Wald-test with chi^2 statistic linearHypothesis( fitsur, R2, test = "Chisq" ) # accepted linearHypothesis( fitsur, restrict2, test = "Chisq" )