Learn R Programming

systemfit (version 1.1-30)

hausman.systemfit: Hausman Test

Description

hausman.systemfit returns the Hausman statistic for a specification test.

Usage

hausman.systemfit( results2sls, results3sls )

Value

hausman.systemfit returns a list of the class

htest that contains following elements:

q

vector of the differences between the estimated coefficients.

qVar

variance covariance matrix of q (difference between the variance covariance matrices of the estimated coefficients).

statistic

the Hausman test statistic.

parameter

degrees of freedom.

p.value

P-value of the test.

method

character string describing this test.

data.name

name of the data.frame used for estimation.

Arguments

results2sls

result of a 2SLS (limited information) estimation returned by systemfit.

results3sls

result of a 3SLS (full information) estimation returned by systemfit.

Details

The null hypotheses of the test is that all exogenous variables are uncorrelated with all disturbance terms. Under this hypothesis both the 2SLS and the 3SLS estimator are consistent but only the 3SLS estimator is (asymptotically) efficient. Under the alternative hypothesis the 2SLS estimator is consistent but the 3SLS estimator is inconsistent.

The Hausman test statistic is

$$m = ( b_2 - b_3 )' ( V_2 - V_3 ) ( b_2 - b_3 ) $$

where $b_2$ and $V_2$ are the estimated coefficients and their variance covariance matrix of a 2SLS estimation and $b_3$ and $V_3$ are the estimated coefficients and their variance covariance matrix of a 3SLS estimation.

References

Greene, W. H. (1993) Econometric Analysis, Fifth Edition, Macmillan.

Hausman, J. A. (1978) Specification Tests in Econometrics. Econometrica. 46:1251-1271.

Kmenta, J. (1997) Elements of Econometrics, Second Edition, University of Michigan Publishing

See Also

systemfit

Examples

Run this code
data( "Kmenta" )
eqDemand <- consump ~ price + income
eqSupply <- consump ~ price + farmPrice + trend
inst <- ~ income + farmPrice + trend
system <- list( demand = eqDemand, supply = eqSupply )

## perform the estimations
fit2sls <- systemfit( system, "2SLS", inst = inst, data = Kmenta )
fit3sls <- systemfit( system, "3SLS", inst = inst, data = Kmenta )

## perform the Hausman test
h <- hausman.systemfit( fit2sls, fit3sls )
print( h )

Run the code above in your browser using DataLab