Question

I'm trying to migrate a tobit model from Stata to R.

The Stata commands for robust would be to just add ,vce(robust) to the model. And for clustering it would be ,vce(cluster idvar).

Reproducible Stata example:

use http://www.ats.ucla.edu/stat/stata/dae/tobit, clear
tobit apt read math i.prog, ul(800)
tobit apt read math i.prog, ul(800) vce(cluster prog)

Reproducible R example:

library("VGAM")

dat <- read.csv("http://www.ats.ucla.edu/stat/data/tobit.csv")

summary(m <- vglm(apt ~ read + math + prog, tobit(Upper = 800), data = dat))

My understanding is that coeftest(m, vcov = sandwich) should give me robust se.

But I get the following: Error: $ operator not defined for this S4 class.

Could someone suggest an approach for estimating the robust se from the vglm model and also clustered se with vglm?

Was it helpful?

Solution

After spending a whole day looking into this question myself, I think I finally found an appropriate package: Zelig.

http://docs.zeligproject.org/en/latest/zelig-tobit.html

Compare without clustering to clustering:

WITHOUT

> summary(m <- zelig(apt ~ read + math + prog,
          below=0, above=Inf, model="tobit", data = dat))


 How to cite this model in Zelig:
  Kosuke Imai, Gary King, and Olivia Lau. 2015.
  "tobit: Linear regression for Left-Censored Dependent Variable"
  in Kosuke Imai, Gary King, and Olivia Lau, "Zelig: Everyone's Statistical Software,"
  http://gking.harvard.edu/zelig


Call:
"survreg"(formula = formula, dist = "gaussian", data = data, 
    robust = robust)
                Value Std. Error     z        p
(Intercept)    242.74     29.760  8.16 3.45e-16
read             2.55      0.576  4.43 9.24e-06
math             5.38      0.651  8.27 1.31e-16
proggeneral    -13.74     11.596 -1.18 2.36e-01
progvocational -48.83     12.818 -3.81 1.39e-04
Log(scale)       4.12      0.050 82.41 0.00e+00

Scale= 61.6 

Gaussian distribution
Loglik(model)= -1107.9   Loglik(intercept only)= -1202.8
    Chisq= 189.72 on 4 degrees of freedom, p= 0 
Number of Newton-Raphson Iterations: 5 
n= 200 

WITH

> summary(m <- zelig(apt ~ read + math + prog, below=0,
          above=Inf, model="tobit",
          data = dat,robust=T,cluster="prog"))


 How to cite this model in Zelig:
  Kosuke Imai, Gary King, and Olivia Lau. 2015.
  "tobit: Linear regression for Left-Censored Dependent Variable"
  in Kosuke Imai, Gary King, and Olivia Lau, "Zelig: Everyone's Statistical Software,"
  http://gking.harvard.edu/zelig


Call:
"survreg"(formula = formula, dist = "gaussian", data = data, 
    robust = robust)
                Value Std. Err (Naive SE)       z        p
(Intercept)    242.74   2.8315     29.760   85.73 0.00e+00
read             2.55   0.3159      0.576    8.08 6.40e-16
math             5.38   0.2770      0.651   19.44 3.78e-84
proggeneral    -13.74   0.3252     11.596  -42.25 0.00e+00
progvocational -48.83   0.1978     12.818 -246.83 0.00e+00
Log(scale)       4.12   0.0586      0.050   70.34 0.00e+00

Scale= 61.6 

Gaussian distribution
Loglik(model)= -1107.9   Loglik(intercept only)= -1202.8
    Chisq= 189.72 on 4 degrees of freedom, p= 0 
(Loglikelihood assumes independent observations)
Number of Newton-Raphson Iterations: 5 
n= 200 
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top