看起来像 Zelig-tobit 对象的定义 Zelig 包只是包含的容器 tobit 对象的定义 AER 包等等。因此,您应该能够运行 texreg 在...上 tobit 包含在的对象 model :
Zelig-tobit
Zelig
tobit
AER
texreg
model
screenreg(model$zelig.out$z.out[[1]])
收益率:
========================== Model 1 -------------------------- (Intercept) -18.42 (16.34) b 0.49 (0.36) c 17.51 (11.49) Log(scale) 1.76 *** (0.49) -------------------------- AIC 33.55 BIC 34.34 Log Likelihood -12.78 Deviance 9.46 Total 9 Left-censored 3 Uncensored 3 Right-censored 3 Wald Test 2.35 ========================== *** p < 0.001, ** p < 0.01, * p < 0.05
可以写一个 extract 自动执行此操作的方法。这是一个例子:
extract
# extension for Zelig-tobit objects (Zelig package) extract.Zeligtobit <- function(model, include.aic = TRUE, include.bic = TRUE, include.loglik = TRUE, include.deviance = TRUE, include.nobs = FALSE, include.censnobs = TRUE, include.wald = TRUE, ...) { e <- extract(model$zelig.out$z.out[[1]], include.aic = include.aic, include.bic = include.bic, include.loglik = include.loglik, include.deviance = include.deviance, include.nobs = include.nobs, include.censnobs = include.censnobs, include.wald = include.wald, ...) return(e) } setMethod("extract", signature = className("Zelig-tobit", "Zelig"), definition = extract.Zeligtobit)
现在你可以写:
screenreg(model)
产生与上面相同的输出。
我从未完全理解为什么人们会使用 Zelig 而不是像原来的包 AER 。 Zelig 仅为其他现有的估计函数提供包装器,从而以不必要的方式使数据结构复杂化。例如,你为什么不只是使用 AER 包?