model.frame.pdata.frame

0th

Percentile

model.frame and model.matrix for panel data

Methods to create model frame and model matrix for panel data.

Keywords
classes
Usage
# S3 method for pdata.frame
model.frame(
  formula,
  data = NULL,
  ...,
  lhs = NULL,
  rhs = NULL,
  dot = "previous"
)

# S3 method for pdata.frame formula(x, ...)

# S3 method for plm model.matrix(object, ...)

# S3 method for pdata.frame model.matrix( object, model = c("pooling", "within", "Between", "Sum", "between", "mean", "random", "fd"), effect = c("individual", "time", "twoways", "nested"), rhs = 1, theta = NULL, cstcovar.rm = NULL, ... )

Arguments
data

a formula, see Details,

further arguments.

lhs

inherited from package Formula::Formula() (see there),

rhs

inherited from package Formula::Formula() (see there),

dot

inherited from package Formula::Formula() (see there),

x

a model.frame

object, formula

an object of class "pdata.frame" or an estimated model object of class "plm",

model

one of "pooling", "within", "Sum", "Between", "between", "random", "fd" and "ht",

effect

the effects introduced in the model, one of "individual", "time", "twoways" or "nested",

theta

the parameter for the transformation if model = "random",

cstcovar.rm

remove the constant columns, one of "none", "intercept", "covariates", "all"),

Details

The lhs and rhs arguments are inherited from Formula, see there for more details. The model.frame methods return a pdata.frame object suitable as an input to plm's model.matrix. The model.matrix methods builds a model matrix with transformations performed as specified by the model and effect arguments (and theta if model = "random" is requested), in this case the supplied data argument should be a model frame created by plm's model.frame method. If not, it is tried to construct the model frame from the data. Constructing the model frame first ensures proper NA handling, see Examples.

Value

The model.frame methods return a pdata.frame. The model.matrix methods return a matrix.

See Also

pmodel.response() for (transformed) response variable. Formula::Formula() from package Formula, especially for the lhs and rhs arguments.

Aliases
  • model.frame.pdata.frame
  • formula.pdata.frame
  • model.matrix.plm
  • model.matrix.pdata.frame
Examples
# NOT RUN {
# First, make a pdata.frame
data("Grunfeld", package = "plm")
pGrunfeld <- pdata.frame(Grunfeld)

# then make a model frame from a pFormula and a pdata.frame
#pform <- pFormula(inv ~ value + capital)
#mf <- model.frame(pform, data = pGrunfeld)
form <- inv ~ value
mf <- model.frame(pGrunfeld, form)

# then construct the (transformed) model matrix (design matrix)
# from formula and model frame
#modmat <- model.matrix(pform, data = mf, model = "within")
modmat <- model.matrix(mf, model = "within")

## retrieve model frame and model matrix from an estimated plm object
#fe_model <- plm(pform, data = pGrunfeld, model = "within")
fe_model <- plm(form, data = pGrunfeld, model = "within")
model.frame(fe_model)
model.matrix(fe_model)

# same as constructed before
all.equal(mf, model.frame(fe_model), check.attributes = FALSE) # TRUE
all.equal(modmat, model.matrix(fe_model), check.attributes = FALSE) # TRUE

# }
Documentation reproduced from package plm, version 2.2-5, License: GPL (>= 2)

Community examples

Looks like there are no examples yet.