用STATA做普通的回归时计算AIC、BIC、MSE、MAE、MAPE并不难,甚至像MSE这样的都会直接给出但是比如做logit、probit或者mlogit、mprobit甚至ologit、oprobit时,上述五个就不太容易了在网上搜集了很久,也走了不少弯路現将方法及代码整理如下:
忘记在哪看的了,有人说用 qui reg y x1 x2 再跟 fitstat(使用这2条命令需要安装fitstat)来得到AIC、BIC我通过 R 做出来的结果验证了 AIC 是正确嘚,但这个命令得到的BIC感觉并不对(未验证)除此之外,该命令还能得到其他的一些数值比如 LRLog-Lik,R2但是该命令无法用于多分类的 logit、probit 回歸。所以有局限性不如estat ic好用。
解释一下predict e,xb 命令用来创建一个名为e的变量,里面的的数是根据自变量得到的预测值gen mse=(x-e)*(x-e) 这个命令盡管叫 mse,但并不是真的 mse而仅仅是得到每一个观测值与预测值的残差的平方,最后一个 sum mse 出来的均值 mean 才是我们最后要得到的MSE
根据這个公式我们编写代码来计算这个值
同样,最后 sum mae 得到的均值才是我们要的 MAE
MAPE的计算公式如下
由此计算 MAPE 的公式是
同样最后 sum mape 得到嘚均值才是我们要的 MAPE