The wiki describes the Tobit model as follows:
$$y_i = \begin{cases} y_i^* &\text{if} \quad y_i^* > 0 \\
\ 0 &\text{if} \quad y_i^* \le 0 \end{cases}$$
$$y_i^* = \beta x_i + u_i$$
$$u_i \sim N(0,\sigma^2)$$
I will adapt the above model with to your context and offer a plain english interpretation of the equations which may be helpful.
$$y_i = \begin{cases}\ y_i^* &\text{if} \quad y_i^* \le 30 \\
30 &\text{if} \quad y_i^* > 30 \end{cases}$$
$$y_i^* = \beta x_i + u_i$$
$$u_i \sim N(0,\sigma^2)$$
In the above set of equations, $y_i^*$ represents a subject's ability. Thus, the first set of equations state the following:
Our measurements of ability is cut-off on the higher side at 30 (i.e., we capture the ceiling effect). In other words, if a person's ability is greater than 30 then our measurement instrument fails to record the actual value but instead records 30 for that person. Note that the model states $y_i = 30 \quad \text{if} \quad y_i^* > 30$.
If on the other hand a person's ability is less than 30 then our measurement instrument is capable of recording the actual measurement. Note that the model states $y_i = y_i^* \quad \text{if} \quad y_i^* \le 30$.
We model the ability, $y_i^*$, as a linear function of our covariates $x_i$ and an associated error term to capture noise.
I hope that is helpful. If some aspect is not clear feel free to ask in the comments.
The predict()
and fitted()
methods for tobit
objects compute the estimates for the latent mean $\mu = E[y^*] = x^\top \beta$. Additionally, the scale parameter $\sigma$ is available as $scale
in the objects:
mu <- fitted(fit)
sigma <- fit$scale
The probability of a non-zero observation is then $P(y > 0) = \Phi(\mu/\sigma)$, i.e.:
p0 <- pnorm(mu/sigma)
The conditional expectation of the censored $y$ given that it is non-zero is $E[y | y > 0] = \mu + \sigma \cdot \lambda(\mu/\sigma)$, where $\lambda(\cdot)$ is the inverse Mills ratio $\lambda(x) = \phi(x)/\Phi(x)$:
lambda <- function(x) dnorm(x)/pnorm(x)
ey0 <- mu + sigma * lambda(mu/sigma)
Finally, the unconditional expectation is $E[y] = P(y > 0) \cdot E[y | y > 0]$, i.e.:
ey <- p0 * ey0
If you want to visualize everything together in a time series style plot:
plot(y, ylim = my.range)
lines(mu, col = "slategray")
lines(y.star, col = "black")
lines(ey0, col = "green")
lines(ey, col = "blue")
The reason that the predict()
method for tobit
objects does not provide all of this automatically is that for all the distributions other than the normal / Gaussian, the relationship is not that easy. But maybe we should at least support the normal case.
Best Answer
By default, the estimated standard deviation of the residuals ($\sigma$) is returned as $\ln(\sigma)$ since that is how the Tobit log likelihood maximization is performed. If you use
coef(estResult,logSigma = FALSE)
, you will get $\sigma$ instead, which is analogous to the square root of the residual variance in OLS regression. That value can be compared to the standard deviation of affairs. If it is much smaller, you may have a reasonably good model. Or you can do the exponentiation yourself with a calculator and use delta method for the variance. You will also need $\sigma$ to construct some of the marginal effects.I don't think the hypothesis test about $\ln \sigma$ and the corresponding p-value have a clear interpretation, whereas the other coefficients can be interpreted as the marginal effects on the uncensored outcome, so the p-value on the null that the ME is zero makes sense for them. I believe R is just treating $\ln \sigma$ as another parameter.
Here's my replication of your analysis in Stata (where I am also treating the categorical variables as continuous) confirming what I wrote above.
First we load the affairs data:
Here's the Stata equivalent of your
censReg
:Stata reports $\sigma$ rather than $\ln \sigma$, but we can take logs too:
Note that this matches your R output. The z stat and the p-value are for the null that the log standard deviation of the residual is zero, which is definitely not the case here.
Here are the summary stats for the outcome for comparison to $\sigma$:
In this case, the model looks pretty bad, which is often the case with Tobit models, especially "toy" ones meant to illustrate syntax.