Stata 具有虚拟交互作用的多项式logit模型中的边际效应
我有一个含有二元变量的多项式模型,其中包含一个相互作用项。当我以以下方式运行回归时:Stata 具有虚拟交互作用的多项式logit模型中的边际效应,stata,binary-data,logistic-regression,multinomial,Stata,Binary Data,Logistic Regression,Multinomial,我有一个含有二元变量的多项式模型,其中包含一个相互作用项。当我以以下方式运行回归时: mlogit x y x#y,我得到了合理的输出,对值(01)处的交互项进行了估计,并在(10)和(11)处进行了两次ommission,正如我所期望的那样。但是,当我尝试运行命令mfx时,返回一个错误:x#0b:operator invalid r(198) 当我预先生成交互项时,例如z=x*y并运行mlogit x y z,我可以从模型中获得边际效果。然而,y和z(而不是x)的参数估计值与之前的规范有很大的
mlogit x y x#y
,我得到了合理的输出,对值(01)处的交互项进行了估计,并在(10)和(11)处进行了两次ommission,正如我所期望的那样。但是,当我尝试运行命令mfx
时,返回一个错误:x#0b:operator invalid r(198)
当我预先生成交互项时,例如z=x*y
并运行mlogit x y z
,我可以从模型中获得边际效果。然而,y和z(而不是x)的参数估计值与之前的规范有很大的不同,并且y与零有很大的不同(这是不期望的)
据我所知,这似乎是Stata11如何处理交互术语的问题。如果我运行version10.1:mlogit x y x#y
,我会得到一个错误,不允许交互r(101)
有没有一种方法可以让mfx使用版本11生成的模型,或者我可以使用边缘效果以外的其他方法来解决这个问题?您报告了我用示例介绍的三个问题。代码中的注释解释
clear all
set more off
webuse sysdsn1
*----- problem 1 -----
// error: -mfx- can't handle factor variable notation (use -margins- instead)
mlogit insure age male nonwhite male#nonwhite i.site
mfx
*----- problem 2 -----
// error: factor variable notation is available only with Stata >= 11
version 10: mlogit insure age male nonwhite male#nonwhite i.site
*----- problem 3 -----
// results are the same
mlogit insure age male nonwhite c.male#c.nonwhite i.site
gen mnw = male * nonwhite
mlogit insure age male nonwhite mnw i.site
底线:
如果Stata>=11,则可以使用因子变量表示法(#)
建议使用margins
,而不是mfx
如果Stata<11,则必须创建自己的交互,并且可以使用mfx
最后,如果您不提供再现问题的实际代码(问题3),则无法正确评估不一致结果的声明。
mfx
用于版本