0

我运行以下几行:

DATA abc;  
INPUT AA BB CC DD EE;  
CARDS;  
...  
;  
RUN;

PROC GLM DATA = abc;  
MODEL AA BB CC DD EE = / NOUNI;  
REPEATED conditions 5 (1 2 3 4 5) / PRINTE;  
MEANS / TUKEY ALPHA = 0.05;  
RUN; 

但是该MEANS语句适用于类变量(“错误:此效果中只允许类变量。” SAS 说。)。反过来,我只定义了响应(试验)MODEL AA BB CC DD EE = / NOUNI;:。有谁能够帮我?

PS
(基本上我的设计在CrossValidated中进行了解释。)

4

1 回答 1

1

我相当肯定,根据我在 SAS 方面的经验,你想要的东西在 SAS 中并不容易获得——尽管我相信这是可能的。如果需要,手动确认当然很容易。

考虑您提供的链接中的数据,我将其读入 SAS 程序...

DATA raw_lph;
    INPUT idnum cntrl a b c d;
    CARDS;
    20 5.1 12.42 10.1 9.58 8.54
    21 4.07 9.96 14.12 10.79 12.24
    22 3.94 4.92 13.04 15.96 9.37
    25 0.6 3.24 8.94 0.61 3.62
    26 1.72 13.96 2.48 3.44 3.12
    27 0.53 3.36 1.4 4 0.81
    28 0.97 3.88 2.33 3.77 3.31
    31 0.15 4.05 1.45 2.44 1.47
    32 0.58 1.92 2.47 2.33 4.92
    33 1.02 6.03 4.4 4.8 3.88
;  
RUN;

要对其进行更传统的方差分析,您需要对其进行转置,我就是这样做的。

DATA transposed_lph;
    SET raw_lph;
    RETAIN idnum;
    ARRAY varnames[5] $ _TEMPORARY_ ('cntrl' 'a' 'b' 'c' 'd');
    ARRAY steps[5] cntrl--d;
    DO i=1 TO 5;
        well=varnames[i];
        pctlph=steps[i];
        OUTPUT;
    END;
    KEEP idnum well pctlph;
RUN;

现在,下面有两个块,一个具有更传统的 ANOVA 格式,一个设置为使用 REPEATED 语句。

PROC GLM DATA=transposed_lph;
    CLASS well idnum;
    MODEL pctlph = well idnum well(idnum);
    LSMEANS well /ADJUST=TUKEY E=well(idnum) PDIFF=ALL;
QUIT;

PROC GLM DATA=raw_lph;
    MODEL cntrl--d = /NOUNI;
    REPEATED Well;
QUIT;

处理重复测量就是处理受试者内部的变化,而不是受试者之间的变化。第一个模型失败是因为它没有错误项,因为我们成功地用三个项解释了模型中的所有方差。这些术语是血液在哪个井中,它是哪个主题,以及嵌套在 idnum 中的井的效果 - 或者本质上,每个主题的每个井之间的差异 - 也就是在主题变化中。

如果您查看第一组的输出,您会看到最终得到:

Source                   DF     Type III SS      Mean Square       F    p-value
well                      4     134.5175200      33.6293800        .       .
idnum                     9     487.1931300      54.1325700        .       .
well(idnum)              36     255.2066000       7.0890722        .       .

使用 LSMEANS 语句,我要求 Tukey-adjusted 均值很好;E=well(idnum) 告诉系统使用 well(idnum) 作为这些均值的误差项。现在,查看第二个 PROC GLM 的输出。

Source                  DF    Type III SS    Mean Square   F Value   Pr
Well                     4    134.5175200     33.6293800      4.74   0.0035
Error(Well)             36    255.2066000      7.0890722

如您所见,重复测量很好地识别了相同的错误陈述。但是,据我所知,如果不使用 CLASS 语句,您将无法从 SAS 中的任何建模过程中获取方法。因此,解决此问题的一种方法是重组我所做的模型以尝试“游戏系统”。或者,您可以手动计算 Tukey HSD。也可能有一个比 SAS 处理得更好的 R 包。

对于它的价值,我在 Minitab 上学习了建模,它实际上似乎很好地处理了建模,所以它可能值得一看。

于 2012-04-13T21:40:45.457 回答