pgmm {plm} | R Documentation |
General method of moments estimator for static or dynamic models with panel data.
pgmm(formula, data, effect = "individual", model = "twosteps", instruments = NULL, gmm.inst, lag.gmm, transformation = "d", fsm = NULL, index = NULL,...) ## S3 method for class 'pgmm': summary(object,robust, ...) ## S3 method for class 'summary.pgmm': print(x, digits = max(3, getOption("digits") - 2), width = getOption("width"),...)
formula |
a symbolic description for the model to be
estimated. Should be an object of class "dynformula" |
object,x |
an object of class "pgmm" , |
data |
a data.frame , |
effect |
the effects introduced in the model, one of
"individual" or "twoways" , |
model |
one of "onestep" or "twosteps" , |
instruments |
a one side formula containing the normal instruments, |
gmm.inst |
a one side formula containing the GMM instruments, |
lag.gmm |
a list containing the lags to use for each GMM
instrument, or a list of two named lists ("d" for difference
and "l" for level) in case of ``system GMM'', |
transformation |
the kind of transformation to apply to the model
: either "d" (the default value) for the ``difference GMM''
model or "ld" for the ``system GMM'', |
fsm |
the matrix for the one step estimator : one of "I"
(identity matrix) or "G" (=D'D where D is the first
difference operator) if transformation="d" , one of
"GI" or "full" if transformation="ld" , |
index |
the indexes, see plm.data , |
digits |
digits, |
width |
the maximum length of the lines in the print output, |
robust |
if TRUE , robust inference is performed in the summary, |
... |
further arguments. |
pgmm
estimates a model for panel data with the general method of
moments estimator. The description of the model to estimate is
provided with a dynformula
. The GMM instruments are
provided by filling the pgmm.inst
argument with a one side
formula. By default, all the variables of the model which are not used
as GMM instruments are used as normal instruments with the same lag
structure as the one specified in the dynformula
, but the user
may also specified one side formula to indicate expicitly the
variables to use as normal instruments. The lags used for the GMM
instruments are indicated with the lag.gmm
argument. For each
instrument, it is either a vector of length 2 (c(99,3)
indicates to use
all the lags available up to t-3), or a scalar (2 indicates to use the
lags 0, 1 and 2). If a single vector (or scalar) is written, then this
lag structure is replicated for all GMM instruments. Otherwise,
lag.gmm
should be a list of length equal to the number of GMM
instruments.
transformation
indicates how the model should be transformed
for the estimation. "d"
gives the ``difference GMM'' model (see
Arellano and Bond (1991)), "ld"
the ``system GMM'' model (see
Blundell and Bond (1998)).
pgmm
is an attempt to adapt GMM estimators available within the
DPD library for GAUSS (see Arellano and Bond 1998) and OX (see
Doornik, Arellano and Bond 2006) and with the xtabound2 library for
STATA (see Roodman 2006).
an object of class c("pgmm","panelmodel")
, which has the following elements :
coefficients |
the vector (or the list for fixed effects) of coefficients, |
residuals |
the vector of residuals, |
fitted.values |
the vector of fitted.values, |
vcov |
the covariance matrix of the coefficients, |
df.residual |
degrees of freedom of the residuals, |
model |
a list containing the variables used for the estimation for each individual, |
W |
a list containing the instruments for each individual (two lists in case of ``sys–GMM''), |
K |
a list containing K the number of explanatory
variables, Ky the number of lags of the dependent variable
and Kt the number of time dummies, |
A1 |
the weighting matrix for the one–step estimator, |
A2 |
the weighting matrix for the two–steps estimator, |
call |
the call. |
It has print
, summary
and print.summary
methods.
Yves Croissant
Arellano, M. and Bond, S. (1991) Some Tests of Specification for Panel Data: Monte Carlo Evidence and an Application to Employment Equations, The Review of Economic Studies, vol. 58(2), april 1991, pp.227–297.
Arellano, M. and Bond, S. (1998) Dynamic Panel Data Estimation Using DPD89 for GAUSS : a Guide for Users.
Blundell, R. and Bond, S. (1998) Initial Conditions and Moment Restrictions in Dynamic Panel Data Models, Journal of Econometrics, vol. 87, pp.115–143.
Doornik, J., Arellano, M. and Bond, S. (2006) Panel Data Estimation using DPD for Ox.
Roodman, D. (2006) How to do xtabound2 : an Introduction to ``difference'' and ``system'' GMM in Stata, working paper no 103, Center for Global Development.
dynformula
for dynamic formulas, sargan
for
Sargan tests and mtest
for Arellano–Bond 's tests of mulicolinearity
data("EmplUK", package="plm") ## Arellano Bond 91 table 4b z1 <- pgmm(dynformula(log(emp)~log(wage)+log(capital)+log(output),list(2,1,0,1)), data=EmplUK, effect="twoways", model="twosteps", gmm.inst=~log(emp),lag.gmm=list(c(2,99))) ## Blundell and Bond tab4 (cf DPD for OX p.12 col.4) z2 <- pgmm(dynformula(log(emp)~log(wage)+log(capital),list(1,1,1)), data=EmplUK, effect="twoways", model="onestep", gmm.inst=~log(emp)+log(wage)+log(capital),lag.gmm=c(2,99), transformation="ld") summary(z2,robust=TRUE)