Fixed and random effects estimators for truncated or censored limited dependent variable
pldv( formula, data, subset, weights, na.action, model = c("fd","random","pooling"), index =NULL, R =20, start =NULL, lower =0, upper =+Inf, objfun = c("lsq","lad"), sample = c("cens","trunc"),...)
Arguments
formula: a symbolic description for the model to be estimated,
data: a data.frame,
subset: see lm,
weights: see lm,
na.action: see lm,
model: one of "fd", "random", or "pooling",
index: the indexes, see pdata.frame(),
R: the number of points for the gaussian quadrature,
start: a vector of starting values,
lower: the lower bound for the censored/truncated dependent variable,
upper: the upper bound for the censored/truncated dependent variable,
objfun: the objective function for the fixed effect model (model = "fd", irrelevant for other values of the model argument ): one of "lsq" for least squares (minimise sum of squares of the residuals) and "lad" for least absolute deviations (minimise sum of absolute values of the residuals),
sample: "cens" for a censored (tobit-like) sample, "trunc" for a truncated sample,
...: further arguments.
Returns
For model = "fd", an object of class c("plm", "panelmodel"), for model = "random" and model = "pooling" an object of class c("maxLik", "maxim").
Details
pldv computes two kinds of models: a LSQ/LAD estimator for the first-difference model (model = "fd") and a maximum likelihood estimator with an assumed normal distribution for the individual effects (model = "random" or "pooling").
For maximum-likelihood estimations, pldv uses internally function maxLik::maxLik() (from package list("maxLik")).
Examples
## as these examples take a bit of time, do not run them automatically## Not run:data("Donors", package ="pder")library("plm")pDonors <- pdata.frame(Donors, index ="id")# replicate Landry/Lange/List/Price/Rupp (2010), online appendix, table 5a, models A and BmodA <- pldv(donation ~ treatment + prcontr, data = pDonors, model ="random", method ="bfgs")summary(modA)modB <- pldv(donation ~ treatment * prcontr - prcontr, data = pDonors, model ="random", method ="bfgs")summary(modB)## End(Not run)