调整后的预测在Stata中运行ANOVA

时间:2013-01-16 08:35:08

标签: stata anova

我有一个结果变量x和三个解释变量a, b, c,它们是分类变量。在我的示例中,a有8个级别,b有4个级别,c有35个级别,但并非所有三个变量的组合都有观察结果(这可能不重要)。

如果我在Stata中运行以下添加剂ANOVA模型

anova x a b c
adjust, by(a b) gen(y)

然后我获得由变量xa调整的变量b的预测。 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, bc的每种组合的值,而上表仅包含a和{的每种组合的值{1}}。如何从表中保存结果,以便我可以使用这些?表格中的值与b中的值之间的联系是什么?

提前致谢。

更新:我在y中找到了这个:

  

估算命令中使用但未包含在by()变量列表或调整变量列表中的变量保留为其当前值,通过       观察。这里adjust显示平均估计预测(或相应的概率或指数预测),用变量定义的每个组中的这些未指定变量的平均值代替       在by()选项中。

对于我的数据也是如此。例如,如果help adjusta=75,则b=2采用值12,13,14,15,16。与c对应的y的值(即平均值)正是表中显示的值。但是,如果值的平均值不是它所需的值,该怎么办?

1 个答案:

答案 0 :(得分:1)

这是对Stefan Hansen对adjustmargins的评论的回复。

一般来说,没有;但是一切都取决于模型以及是否存在除了命名之外的协变量。但请考虑

的结果
sysuse auto, clear 
anova mpg foreign rep78
adjust, by(foreign rep78)
margins foreign#rep78

这里结果确实重合。

除了初级用途之外,我不会精通margins,所以任何更复杂的问题都需要由其他人来处理。