如何做Tukey';SAS中单因素RM方差分析后的s HSD事后测试?

如何做Tukey';SAS中单因素RM方差分析后的s HSD事后测试?,sas,glm,anova,posthoc,Sas,Glm,Anova,Posthoc,我运行以下行: 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; 但是意味着语句可以处理类变量(“错误:只有类变量才允许这种效果。”SAS说)。反过

我运行以下行:

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; 
但是
意味着
语句可以处理类变量(“错误:只有类变量才允许这种效果。”SAS说)。反过来,我只定义了反应(试验):
AA-BB-CC-DD-EE=/NOUNI型。有人能帮我吗

附加说明

(基本上我的设计是在会议上解释的。)

根据我在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格式,另一个设置为使用重复语句

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调整后的平均值;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上学习了建模,它似乎实际上处理建模的非常好,因此可能值得一看


您是否缺少一个
语句?@itzy否。。。我没有
变量。。。我不知道如何解释,但是
AA-BB-CC-DD-EE
是一个因素(条件)的5个水平(试验)。我该怎么办?我对这些模型不太了解,但你可能必须在你的模型语句之前,用一条写着
class AA BB CC DD EE
的语句来识别具有类似级别的变量。如果你只是想用tukey调整的p值进行两两比较,用LSMEANS代替MEANS。@user1294223:我试过,但同样的错误…非常感谢你的帖子:)!嗯,我发现
PROC MIXED
给出了统计数据。没问题。希望它能有所帮助-听起来像是混合型的,能满足您的需求。:)