我有一个结果变量 x
和三个解释变量 a, b, c
,它们是分类变量 . 在我的例子中 a
有8个级别, b
有4个级别, c
有35个级别,但并非三个变量的所有组合都有观察(这可能不重要) .
如果我在Stata中运行以下添加剂ANOVA模型
anova x a b c
adjust, by(a b) gen(y)
然后我获得由变量 a
和 b
调整的变量 x
的预测 . adjust命令在Result窗口中输出下表,并且还生成带有调整后预测的变量 y
.
| b
a | 2 4 8 16
----------+-----------------------------------
50 | .016655 .018487
75 | .008286 .011237
100 | .005937 .006677 .012467
150 | .001905 .004038 .009454
200 | .001774 .003107 .007592 .010081
400 | .004982 .006853 .009342
800 | .002126 .00521
1000 | .002732 .005221
----------------------------------------------
Key: Linear Prediction
我的问题是变量 y
具有 a, b
和 c
的每个组合的值,而上面的表只有 a
和 b
的每个组合的值 . 如何从表中保存结果,以便我可以使用这些?表中的值与 y
中的值之间的联系是什么?
提前致谢 .
Update :我在 help adjust
中发现了这个:
在估计命令中使用但未包含在by()变量列表或调整变量列表中的变量将保留其当前值,通过观察进行观察 . 这里adjust调整显示平均估计预测(或相应的概率或指数预测),用by()选项中的变量定义的每个组中的这些未指定变量的平均值代替 .
对于我的数据也是如此 . 例如,如果 a=75
和 b=2
,则 c
采用值12,13,14,15,16 . 对应于 c=14
的 y
的值(这是平均值)正是表中显示的值 . 但是,如果值的平均值不是它所采用的值,该怎么办?
1 回答
这是对Stefan Hansen对
adjust
和margins
的评论的回复 .一般来说,没有;但一切都取决于模型以及是否存在除命名之外的协变量 . 但考虑一下结果
这里的结果确实重合 .
除了初级用途之外,我不会精通
margins
,所以任何更复杂的问题都需要由其他人来处理 .