lt {truncSP} | R Documentation |
Estimation of truncated regression models using the Left Truncated (LT) estimator
Description
Estimates linear regression models with truncated response variables (fixed truncation point), using the LT estimator (Karlsson 2006).
Usage
lt(formula, data, point = 0, direction = "left", clower = "ml", const = 1, cupper = 2,
beta = "ml", covar = FALSE, na.action, ...)
## S4 method for signature 'lt'
print(x, digits = max(3, getOption("digits") - 3), ...)
## S4 method for signature 'lt'
summary(object, level=0.95, ...)
## S4 method for signature 'summary.lt'
print(x, digits= max(3, getOption("digits") - 3), ...)
## S4 method for signature 'lt'
coef(object,...)
## S4 method for signature 'lt'
vcov(object,...)
## S4 method for signature 'lt'
residuals(object,...)
## S4 method for signature 'lt'
fitted(object,...)
Arguments
x , object |
an object of class |
formula |
a symbolic description of the model to be estimated |
data |
an optional data frame |
point |
the value of truncation (the default is 0) |
direction |
the direction of truncation, either |
clower |
the lower threshold value to be used when trimming the conditional density of the errors from below. The default is |
const |
a number that can be used to alter the size of the lower threshold. |
cupper |
number indicating what upper threshold to use when trimming the conditional density of the errors from above. The number is used to multiply the lower threshold value, i.e. if |
beta |
the method of determining the starting values of the regression coefficients (See Details for more information):
|
covar |
logical. Indicates whether or not the covariance matrix should be estimated. If |
na.action |
a function which indicates what should happen when the data contain |
digits |
the number of digits to be printed |
level |
the desired level of confidence, for confidence intervals provided by |
... |
additional arguments. For |
Details
Minimizes the objective function described in Karlsson (2006) wrt the vector of regression coefficients, in order to find the LT estimates. The minimization is performed by optim
using the "Nelder–Mead" method, and a maximum number of iterations of 2000. The maximum number of iterations can be adjusted by setting control=list(maxit=...)
(for more information see the documentation for optim
).
It is recommended to use one of the methods for generating the starting values of the regression coefficients (see argument beta
) rather than supplying these manually, unless one is confident that one has a good idea of what these should be. This because the starting values can have a great impact on the result of the minimization.
Note that setting cupper=1
means that the LT estimates will coincide with the estimates from the Quadratic Mode Estimator (see function qme
). For more detailed information see Karlsson and Lindmark (2014).
Value
lt
returns an object of class "lt"
.
The function summary
prints a summary of the results, including two types of confidence intervals (normal approximation and percentile method). The generic accessor functions
coef
, fitted
, residuals
and vcov
extract various useful features of the value returned by lt
An object of class "lt"
, a list with elements:
coefficients |
the named vector of coefficients |
startcoef |
the starting values of the regression coefficients used by |
cvalues |
information about the thresholds used. The method and constant used and the resulting lower and upper threshold values. |
value |
the value of the objective function corresponding to |
counts |
number of iterations used by |
convergence |
from |
message |
from |
residuals |
the residuals of the model |
fitted.values |
the fitted values |
df.residual |
the residual degrees of freedom |
call |
the matched call |
covariance |
if |
R |
if |
bootrepl |
if |
Author(s)
Anita Lindmark and Maria Karlsson
References
Karlsson, M. (2006) Estimators of regression parameters for truncated and censored data, Metrika, 63, pp 329–341
Karlsson, M., Lindmark, A. (2014) truncSP: An R Package for Estimation of Semi-Parametric Truncated Linear Regression Models, Journal of Statistical Software, 57(14), pp 1–19, http://www.jstatsoft.org/v57/i14/
See Also
lt.fit
, the function that does the actual fitting
qme
, for estimation of models with truncated response variables using the QME estimator
stls
, for estimation of models with truncated response variables using the STLS estimator
truncreg
for estimating models with truncated response variables by maximum likelihood, assuming Gaussian errors
Examples
##Simulate a data.frame (model with asymmetrically distributed errors)
n <- 10000
x1 <- runif(n,0,10)
x2 <- runif(n,0,10)
x3 <- runif(n,-5,5)
eps <- rexp(n,0.2)- 5
y <- 2-2*x1+x2+2*x3+eps
d <- data.frame(y=y,x1=x1,x2=x2,x3=x3)
##Use a truncated subsample
dtrunc <- subset(d, y>0)
##Use lt to consistently estimate the slope parameters
lt(y~x1+x2+x3, dtrunc, point=0, direction="left", clower="ml", const=1,
cupper=2, beta="ml", covar=FALSE)
##Example using data "PM10trunc"
data(PM10trunc)
ltpm10 <- lt(PM10~cars+temp+wind.speed+temp.diff+wind.dir+hour+day,
data=PM10trunc, point=2, control=list(maxit=2500))
summary(ltpm10)