边距后估计结果后如何在表格中包括AIC

时间:2018-06-26 15:25:55

标签: stata

我有一个GLM模型,我在Stata中进行了估算。感兴趣的系数是边际效应,这是我用margins命令得到的。

但是,后估计表不包括AIC之类的摘要统计信息,我希望在那里。

我通过编写辅助程序getAIC进行了尝试:

program getAIC
    estat ic
    matrix list r(S)
    matrix S = r(S)
    scalar aic = S[1,5]
end

然后估算将像这样进行:

 qui glm y x, fa(bin) link(probit)
 getAIC
 qui margins, dydx(x) post
 estadd loc AIC aic

输出命令是:

 esttab using output.tex, s(aic, fmt(0))

但是,结果表中没有AIC。

任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您需要从程序aic返回标量getAIC,并相应地使用它。

以下对我有用:

program getAIC, rclass
    estat ic
    matrix list r(S)
    matrix S = r(S)
    scalar aic = S[1,5]
    return scalar aic = aic
end

sysuse auto, clear

glm foreign price, fa(bin) link(probit)

getAIC
local AIC = round(`r(aic)', .01)

margins, dydx(price) post

estadd local AIC `AIC'

esttab using output, s(AIC) replace

type output.txt
----------------------------
                      (1)   

----------------------------
price          0.00000766   
                   (0.43)   
----------------------------
AIC                 93.89   
----------------------------
t statistics in parentheses
* p<0.05, ** p<0.01, *** p<0.001