我有一个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。
任何想法如何做到这一点?
答案 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