Cuando se analizan datos microeconómicos no resulta infrecuente descubrir que la variable dependiente se encuentra de alguna forma “limitada”, en el sentido de que solo es observada plenamente en una parte de su rango (censura) o solo es observada para una parte de la población (truncamiento o muestras seleccionadas). En estos casos se rompe una de las hipótesis básicas del modelo de regresión clásico: el empleo de una muestra aleatoria representativa de la población de interés. Todo esto hace que estimador MCO sea inconsistente y los diversos métodos de estimación no sean efectivos a la hora de explicar los fenómenos. En esta mismísica sesión se verá la teoría relacionada a los datos que presentan limitaciones, tales como la censura y el truncamiento; así como también los métodos de estimación para este tipo de datos y la estimación de los mismos con R.
Si los datos son censurados no se observa los valores de la variable dependiente, pero se observan los de las variables explicativas. Se dispone de observaciones para todos los individuos de la muestra, pero el valor verdadero de la variable dependiente es observado solo para ciertos individuos, mientras que para el resto solo se sabe que la variable es mayor (o menor) que un valor. \[ y_i*=\beta´x_i+e \] La variable dependiente se observará con censura, como, por ejemplo:
• Inversión en maquinarias. • Horas de trabajo.
Existen 2 tipos de censuras para las variables que presentan esta característica:
Tiene la siguiente definición: $$ y_j={ \begin{array}{ll} y_i, y_i^>L \ L, y_i*<L \end{array} . \
\text{ ó } y_i = max(0,y_i*)
$$ Un ejemplo de este tipo de censura se puede presentar en las horas de trabajo, que están censuradas inferiormente en cero.
Tiene la siguiente definición: $$ y_j={ \begin{array}{ll} y_i, y_i<L \ L, y_i*>L \end{array} . \
\text{ ó } y_i = min(L,y_i*)
$$ Un ejemplo de esta censura en los datos podría ser el ingreso en el hogar, en algunas encuestas se puede encontrar censurada superiormente, ya que, si el ingreso es mayor que una determinada cantidad, sólo se registra eso. En el siguiente gráfico se presenta la distribución de las muestras censuradas:
Distribución de Muestras Censuradas
Este gráfico mostrará la distribución, en ese caso de la censura a la izquierda o censura inferior. Se ve que la variable estandarizada en el valor de cero, y a partir de ahí, toma una especie de media distribción normal en los datos.
Un conjunto de datos estará truncado si los datos que se tienen sólo está disponible para un subconjunto de la población. Los valores de los regresores en el modelo sólo se observan cuando se observa 𝑦. Existen 2 tipos de truncamiento.
Definido por: \[ y_i=y_i^*, \text{ si } y_i☺^* > c \text{ para } N_2 \]
Definido por: \[
y_i=y_i*, \text{ si } y_i* < c \text{ para } N_2
\] El siguiente gráfico muestra la formalización de la distribución de muestras truncadas: donde el valor de truncamiento está situado en -1.
\[ E(y|y > c) = \int^\infty_c yg(y|y > c)dy \rightarrow E(y|trunc) = \mu + \sigma\lambda(\alpha) \\ var(y|y > c) = \sigma^2[1-\delta(\alpha)] \] Donde:
Donde el Ratio Inversio de Mills es: \[ \text{ Ratio de Inverso de Mills} =\left\{ \begin{array}{ll} \frac{f(\alpha)}{1-F(\alpha)},\ \text{ si }\ y > c \text{ truncada hacia abajo}\ \\ \frac{f(\alpha)}{F(\alpha)},\ \text{ si }\ y < c \text{ truncada hacia abajo}\ \end{array} \right. \] ## Problema de Regresión
Cuando la variable está sujeta en un límite inferior fijado en 0, la regresión será inconsistente. Por ejemplo; si se tiene un modelo de oferta de trabajo en el que 𝑦 son las horas de trabajo semanales. No es posible obtener valores negativos. Por eso, para los individuos con 𝑦̂∗ negativo, se entenderá que no trabajan, para ellos, el valor de 𝑦 es 0. Si los valores 𝑦 para esos individuos se hace 0, entonces la recta de regresión estaría sesgada a la baja. La pendiente en sus estimaciones estará sesgada a la baja. La solución a estos problemas en la estimación es el plantear un modelo que utilice una especificación PROBIT para dar el porqué de que algunas observaciones tomen el valor de 0 y otras no. Y para aquellas observaciones con 𝑦∗ > 0, un modelo que cuantifique la relación. El modelo TOBIT realiza dicha regresión.
Suponiendo una variable donde se tiene una solución de esquina. Es decir, es variable vale cero para una proporción considerable de la población, pero se distribuye de forma aproximadamente continua para los valores positivos. Un ejemplo podrían ser las horas que un individuo trabaja en el mes.
Este método de estimación, desarrollado por James Tobin sirve para estimar modelos donde existe censura en los datos. Se puede estimar un modelo de regresión lineal, pero este modelo podría tener predicciones negativas. Se tienen datos para toda la muestra, pero la variable dependiente está censurada en un determinado valor. La solución a los problemas de regresión ignorando la censura en la estimación es plantear un modelo que utilice una especificación PROBIT para dar el porqué de que algunas observaciones, tomen el valor de cero y otras no. Y para aquellas observaciones con \(y'>0\), un modelo que cuantifique la relación. El modelo TOBIT realiza dicha regreión.
Se tiene la siguiente relación latente: \[ y_i*=x´+\mu \] Donde \(y\) es una variable censurada tal que: \[ y_i=y_i^* \text{ si } y_i^* > 0 \] La probabilidad de observar un dato censurado, dada una distribución \(\mu_i\) es la siguiente: \[ Pr(y_i=0|x_i) = Pr(y_i* \leq 0|x_i) = Pr(\mu_i \leq -x_i*\beta) = \phi(-z_i)=1-\phi(z_i) \] Es decir, 1 menos la función acumualtiva normal dada las variables explicativas y sus coeficientes.
Los coeficientes estimados del modelo Tobit miden los efectos marginales de las variables explicativas sobre la variable latente 𝑦∗. 𝑦 es la variable observable y se quiere principalmente hallar los efectos de las variables explicativas sobre el valor esperado de 𝑦 dados los regresores, es decir, la probabilidad adicional, o los efectos marginales de las explicativas sobre 𝐸(𝑦|𝑥, 𝑦 > 0). Los efectos marginales serán:
\[ \frac{\partial E(y*|x)}{\partial x_k}=\beta_k \] Sobre la variable observada sin condicionar 𝑦 > 0: \[ \frac{\partial E(y|x)}{\partial x_k} =\beta_k \phi (\frac{x_i´\beta}{\sigma}) \] Sobre la variable condicionada y > 0: \[ \frac{\delta E(y|x,y > 0)}{\delta x_k} = \beta_k [1-\delta (\alpha_i)] \] Donde \(\delta(\alpha_i) = \lambda(\alpha_i)[\lambda(\alpha_i)-\alpha_i]\)
Para hacer la estimación de los modelos Tobit para datos censurados, se debe hacer uso de la función vglm(), que está contenido en el paquete VGAM. Por ejemplo, se quiere estimar un modelo donde el puntaje en el test de aptitud académica (variable apt), esta variable dependerá de las variables que representan al puntaje obtenido en los tests de lectura y de matemática (variables read y math, respectivamente), y también dependerá de una variable de factor que muestra el programa que eligió el estudiante (variable prog). Haciendo una revisión de los datos se da con que la variable dependiente tiene una censura a la derecha en 800 (en un histograma se ve claramente la censura).
## Warning: package 'haven' was built under R version 4.0.3
La sintaxis para una regresión tobit es la siguiente:
## Warning: package 'VGAM' was built under R version 4.0.3
## Loading required package: stats4
## Loading required package: splines
En esta sintaxis se especifica la variable de dependiente y los regresores del modelo, tal y como la estimación por MCO, se indicará la censura, en este caso es una censura superior en 800 (se puede hacer un historigrama de ello con “hist”). Los resultados son los siguientes:
##
## Call:
## vglm(formula = apt ~ read + math + prog, family = tobit(Upper = 800),
## data = tobit)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept):1 209.55956 32.54590 6.439 1.20e-10 ***
## (Intercept):2 4.18476 0.05235 79.944 < 2e-16 ***
## read 2.69796 0.61928 4.357 1.32e-05 ***
## math 5.91460 0.70539 8.385 < 2e-16 ***
## proggeneral -12.71458 12.40857 -1.025 0.305523
## progvocational -46.14327 13.70667 -3.366 0.000761 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Names of linear predictors: mu, loglink(sd)
##
## Log-likelihood: -1041.063 on 394 degrees of freedom
##
## Number of Fisher scoring iterations: 5
##
## No Hauck-Donner effect found in any of the estimates
Cabe resaltar que los coeficientes de la regresión Tobit se interpretan de manera que la regresión por MCO, sin embargo, el efecto lineal es en la variable latente sin censura, no en la variable observada. Los resultados se pueden interpretar de la siguiente manera:
• Para un incremento en una unidad en la variable read, hay un crecimiento de 2.69 unidades en el valor pronosticado de la variable apt.
• Un aumento en una unidad está asociado con el incremento en 5.9146 unidades del valor pronosticado de la variable apt.
• Los términos para la variable prog tienen una interpretación diferente, ya que es una variable de factor. El valor pronosticado de apt es 46.14 más bajo para estudiantes del programa vocacional que para estudiantes del programa académico.
• El coeficiente etiquetado como “(Intercept):1” es el intercepto o la constante del modelo.
• El coeficiente etiquetado como “(Intercept): 2” es un estadístico auxiliar que si se aplica la función exponencial sobre el mismo funciona de manera análoga a la raíz de la suma de cuadrados del error en el mismo modelo estimado por MCO.
La regresión truncada es usada en modelos donde esta característica hace que haya observaciones que no se incluyen en el modelo de regresión lineal, como la existencia de datos perdidos, para hacer una estimación de este tipo se debe conocer el truncamiento y en que punto de la serie de datos se da. Para estimar modelos de regresión con datos truncados, se debe hacer uso del comando truncreg(), que corresponde al paquete del mismo nombre. Antes de usar dicha función debemos saber cuál es el punto de censura de la data y en qué dirección se da este punto.
Se realiza la regresión:
## Warning: package 'truncreg' was built under R version 4.0.4
## Loading required package: maxLik
## Warning: package 'maxLik' was built under R version 4.0.3
## Loading required package: miscTools
## Warning: package 'miscTools' was built under R version 4.0.3
##
## Please cite the 'maxLik' package as:
## Henningsen, Arne and Toomet, Ott (2011). maxLik: A package for maximum likelihood estimation in R. Computational Statistics 26(3), 443-458. DOI 10.1007/s00180-010-0217-1.
##
## If you have questions, suggestions, or comments regarding the 'maxLik' package, please use a forum or 'tracker' at maxLik's R-Forge site:
## https://r-forge.r-project.org/projects/maxlik/
Esta sintaxis indica la variable dependiente y sus regresores, también indica el punto de truncamiento y la dirección de este.Donde “Y” represente el logro en el test de lenguaje truncada en cuarenta, además hay variables como el test de elnguaje, y el tipo de programa escogido por cada estudiante. Si se ven las variables, se hace un truncamiento en 40 porque el logro mínimo que se considera es 40, por ello es a la izquierda o inferior en el valor de 40.
##
## Call:
## truncreg(formula = achiv ~ langscore + prog, data = truncreg,
## point = 40, direction = "left")
##
## BFGS maximization method
## 38 iterations, 0h:0m:0s
## g'(-H)^-1g = 0.000581
##
##
##
## Coefficients :
## Estimate Std. Error t-value Pr(>|t|)
## (Intercept) 8.10413 7.51663 1.0782 0.2810
## langscore 0.81460 0.11741 6.9379 3.979e-12 ***
## prog -0.17135 1.30154 -0.1317 0.8953
## sigma 8.99064 0.69669 12.9048 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Log-Likelihood: -594.98 on 4 Df
En la tabla de coeficientes se muestran los coeficientes de la regresión truncada, los errores estándar de los mismos, el test de Wald y los p-valores asociados a cada coeficiente.
Se tiene la base de datos adjunta, que es una base de datos de 250 mujeres casadas, donde la variable de horas de trabajo (whrs) están truncada debajo de cero. Esta variable es explicada por otras variables de interés, talos como número de hijos en edad preescolar (k16), número de hijos en edad escolar (k618), edad (wa), y años de educación (we). En el siguiente ejemplo se estimará un modelo con datos truncados y se hará una comparación con la estimación por MCO.
Una vez importada la data se estima el modelo ignorando el truncamiento, por lo tanto, se estima un modelo por MCO incluyendo solamente a las mujeres que trabajan. Ello se realiza incluyendo solamente a las mujeres que trabajan, haciendo uso de una submuestra de la que se tiene con subset, donde solo se consideran aquellas donde el valor es mayor a 0, es decir, solo mujeres que trabajaban.
Esta sintaxis le indica a R que se quiere estimar un modelo por MCO para las personas que solamente trabajan, los resultados de este modelo son los siguientes:
##
## Call:
## lm(formula = whrs ~ kl6 + k618 + wa + we, data = subset(laborsub,
## whrs > 0))
##
## Residuals:
## Min 1Q Median 3Q Max
## -1459.4 -620.6 59.5 500.7 3584.3
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1629.817 615.130 2.650 0.00895 **
## kl6 -421.482 167.973 -2.509 0.01320 *
## k618 -104.457 54.186 -1.928 0.05584 .
## wa -4.785 9.691 -0.494 0.62221
## we 9.353 31.238 0.299 0.76505
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 808.5 on 145 degrees of freedom
## Multiple R-squared: 0.07175, Adjusted R-squared: 0.04614
## F-statistic: 2.802 on 4 and 145 DF, p-value: 0.02807
Se vuelve a estimar el modelo, pero esta vez utilizaremos el comando truncreg(), este comando sirve para estimar modelos con variable dependiente truncada, es decir, se tomarán en cuenta las 100 observaciones que tienen como valor 0 en la variable whrs. Es decir, se tomará a las personas que no trabajan. Es un truncamiento de tipo inferior, por eso “left”, e indicando el punto de truncamiento que es cero.
library(truncreg)
truncreg = truncreg(whrs ~ kl6 + k618 + wa + we, point = 0, direction ="left", data = laborsub)
Los resultados serán los siguientes:
## Warning in sqrt(diag(vcov(object))): Se han producido NaNs
##
## Call:
## truncreg(formula = whrs ~ kl6 + k618 + wa + we, data = laborsub,
## point = 0, direction = "left")
##
## BFGS maximization method
## 50 iterations, 0h:0m:0s
## g'(-H)^-1g = -5.17
##
##
##
## Coefficients :
## Estimate Std. Error t-value Pr(>|t|)
## (Intercept) 841.5669 3657.7215 0.2301 0.818030
## kl6 -997.9616 NA NA NA
## k618 -830.1422 300.4112 -2.7634 0.005721 **
## wa -95.7008 54.2515 -1.7640 0.077728 .
## we 4.8135 79.0886 0.0609 0.951469
## sigma 2164.9328 NA NA NA
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Log-Likelihood: -1921.3 on 6 Df
El parámetro ‘sigma’, comparable al error estándar del residuo en la regresión por MCO, es considerablemente más grande en la regresión truncada, reflejando su sesgo a la baja en una regresión truncada. Se podrán usar entonces los coeficientes estimados y los efectos marginales de la regresión truncada para hacer inferencias acerca de la población en total.
Se tiene la base de datos adjunta, que es una base de datos de 2000 mujeres, se pide hacer una estimación de los datos censurados haciendo uso del comando tobit, a su vez comparar los resultados con una estimación por MCO que no tome en cuenta dicha censura de los datos.Se tiene la variable lwf, que representa el logaritmo del salario por hora para cada una de las observaciones, pero que tomará el valor de 0 cuando las personas no trabajan, por lo tanto, no tendrán salario. Se hace la regresión del modelo ignorando la censura:
Los resultados serán los siguientes:
##
## Call:
## lm(formula = lwf ~ age + married + children + education, data = womenwk)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3.4364 -1.2349 0.4168 1.0626 2.7702
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -1.077738 0.170322 -6.328 3.06e-10 ***
## age 0.036362 0.003862 9.416 < 2e-16 ***
## married 0.318821 0.069083 4.615 4.18e-06 ***
## children 0.330501 0.021314 15.506 < 2e-16 ***
## education 0.084334 0.010230 8.244 2.98e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.322 on 1995 degrees of freedom
## Multiple R-squared: 0.212, Adjusted R-squared: 0.2105
## F-statistic: 134.2 on 4 and 1995 DF, p-value: < 2.2e-16
Este modelo estimado por MCO está ignorando la censura que hay en la variable dependiente, en la que se está tomando como cero a los salarios de las mujeres que no trabajan. Ahora estimaremos el modelo usando el comando tobit, que estima los parámetros cuando existe censura por medio del método del mismo nombre. La sintaxis será la siguiente:
Los resultados serán los siguientes:
##
## Call:
## vglm(formula = lwf ~ age + married + children + education, family = tobit(Lower = 0),
## data = womenwk)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept):1 -2.807741 0.253656 -11.069 < 2e-16 ***
## (Intercept):2 0.627449 0.018582 33.766 < 2e-16 ***
## age 0.052157 0.005637 9.253 < 2e-16 ***
## married 0.484185 0.101260 4.782 1.74e-06 ***
## children 0.486007 0.030996 15.680 < 2e-16 ***
## education 0.114950 0.014837 7.748 9.36e-15 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Names of linear predictors: mu, loglink(sd)
##
## Log-likelihood: -3349.968 on 3994 degrees of freedom
##
## Number of Fisher scoring iterations: 27
##
## No Hauck-Donner effect found in any of the estimates
Los estimadores tobit para lwf son positivos, y significativos para todas las variables explicativas. Se espera que cada uno de esos factores incrementan la probabilidad de que una mujer trabajará si se incrementa su salario en el estado de empleo.
Se tiene la base de datos ‘mus16data.dta’, esta base de datos corresponde a la Encuesta Panel de gato médico del año 2001, esta es una muestra de 3328 observaciones, donde hay 526 observaciones (15.8%) con valores 0 para la variable ambexp¸ que corresponde al gasto médico ambulatorio, se estimará un modelo teniendo en cuenta la censura en la variable ambexp, usando como regresores a las variables age, female, educ, blhisp, totchr e ins. Se debe estimar el modelo haciendo uso del comando ‘vglm’, la sintaxis será la siguiente:
treg = vglm(ambexp ~ age + female + educ + blhisp + totchr + ins
, tobit(Lower = 0), data = mus16data)
Los resultados serán los siguientes:
##
## Call:
## vglm(formula = ambexp ~ age + female + educ + blhisp + totchr +
## ins, family = tobit(Lower = 0), data = mus16data)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept):1 -1.883e+03 3.296e+02 -5.713 1.11e-08 ***
## (Intercept):2 7.854e+00 1.643e-02 477.933 < 2e-16 ***
## age 3.142e+02 4.411e+01 7.122 1.06e-12 ***
## female 6.850e+02 9.605e+01 7.132 9.90e-13 ***
## educ 7.087e+01 1.922e+01 3.687 0.000227 ***
## blhisp -5.303e+02 1.081e+02 -4.906 9.31e-07 ***
## totchr 1.245e+03 6.175e+01 20.157 < 2e-16 ***
## ins -1.675e+02 1.000e+02 -1.674 0.094040 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Names of linear predictors: mu, loglink(sd)
##
## Log-likelihood: -26359.42 on 6648 degrees of freedom
##
## Number of Fisher scoring iterations: 8
##
## No Hauck-Donner effect found in any of the estimates
Todos los regresores son estadísticamente significativos al 95% de confianza, la interpretación de los coeficientes corresponde a la derivada parcial de la variable latente 𝑦∗, respecto de 𝑥.