1

背景:我有一个分类变量X,有四个级别,我适合作为单独的虚拟变量。因此,共有三个虚拟变量表示 x=1、x=2、x=3(x=0 是基线)。

问题/问题:我想测试模型参数线性组合的重要性,例如:2*B1+2*B2+B3=0。

在 Stata 中,第一个问题可以在使用以下方法拟合模型后轻松完成:

test 2*B1 + 2*B2 + B3 = 0

现在,如果我想在 SAS 中PROC GLM使用CONTRAST语句执行此操作,我知道我的“权重”(因为没有更好的术语)总和必须为 0。例如,如果在一个不相关的示例中,我想测试以下内容对于四个连续变量:C1 + C2 = C3 + C4,我的对比语句如下所示:

CONTRAST 'Contrast1' C1 0.5 C2 0.5 C3 -0.5 C4 -0.5

在这种情况下,每个变量应该如何加权是很明显的。但是,当我想将上面模型中给出的系数 (2*B1 + 2*B2 + B3 = 0) 与这些权重相结合时,我不清楚如何在CONTRAST语句中对函数进行加权,特别是对于一个假人变量编码的分类变量,如问题最初所述。

4

1 回答 1

2

使用 PROC REG。

proc reg data=mydata;
model y = b1 b2 b3;
test 2*b1+2*b2+b3=0;
run;
quit;
于 2014-02-13T03:41:52.797 回答