2012-04-07 13 views
0

Ich betreiben die folgenden Zeilen:Wie wird Tukey's HSD-Post-hoc-Test nach 1-Wege-RM-ANOVA in SAS durchgeführt?

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; 

Aber die MEANS Anweisung funktioniert mit Klassenvariablen ("ERROR:. Nur Variablen Klasse in diesem Effekt erlaubt". SAS sagen). Ich habe wiederum nur Antworten (Versuche) definiert: MODEL AA BB CC DD EE =/NOUNI;. Kann mir jemand helfen?

P.S.
(Im Grunde ist mein Design an der CrossValidated erklärt.)

+1

Vermissen Sie eine 'class' Aussage? – itzy

+0

@itzy Nein ... Ich habe keine "Klassenvariablen" ... Ich weiß nicht, wie ich das erklären soll, aber die "AA BB CC DD EE" sind die * 5 Stufen * (Versuche) von * einem Faktor * (Bedingung). Was soll ich machen? – stan

+0

Ich weiß nicht viel über diese Modelle, aber Sie müssen wahrscheinlich Variablen identifizieren, die solche Ebenen haben, mit einer Aussage, die 'Klasse AA BB CC DD EE' vor Ihrer Modellaussage sagt. – itzy

Antwort

1

ich ziemlich sicher bin, auf Grund meiner Erfahrung mit SAS, dass Sie wollen, was nicht ganz einfach ist, in SAS zu bekommen - obwohl ich glaube, es ist möglich. Es ist sicherlich leicht von Hand zu bestätigen, wenn Sie müssen.

Betrachten Sie die Daten aus dem Link, den Sie gab, die ich in ein SAS-Programm lesen ...

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; 

eine traditionellere ANOVA auf, es zu tun, müssen Sie es umsetzen, was ich auch tat.

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; 

Jetzt gibt es zwei unten Blöcke, eine mit dem traditionelleren ANOVA-Format und eine Aufspannung die wiederholten Anweisung zu verwenden.

Beim Umgang mit wiederholten Messungen geht es nur um die Handhabung von Variationen innerhalb von Subjekten, im Gegensatz zu Subjekten. Das erste Modell schlägt fehl, weil es keine Fehlerbedingung hat, weil wir ALLE Varianz im Modell mit den drei Termen erfolgreich berücksichtigt haben. Die Begriffe sind, woher das Blut ist, welches Subjekt es ist, und die Wirkung des Wells innerhalb des Idnums - oder, im Wesentlichen, die Varianz zwischen jedem Well pro Subjekt - aka innerhalb der Subjektvariation.

Wenn Sie am Ausgang des ersten Satzes anschauen, werden Sie sehen, dass Sie am Ende mit:

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  .  . 

Mit der LSMEANS Anweisung, bitte ich für die Tukey-adjusted Mittel für gut; das E = well (idnum) sagt dem System, dass es den Fehler (idnum) als Fehler für diese Mittel verwendet. Sehen Sie sich nun die Ausgabe vom zweiten PROC GLM an.

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 

Wie Sie sehen können, identifiziert die wiederholte Maßnahmen die gleiche Fehlermeldung für gut. Nach meinem Wissen können Sie jedoch keine der Modellierungsverfahren in SAS abrufen, ohne eine CLASS-Anweisung zu verwenden. Also, eine Möglichkeit, dies zu umgehen, ist, das Modell, das ich gemacht habe, zu restrukturieren und "das System zu spielen". Alternativ können Sie den Tukey HSD von Hand berechnen. Es könnte ein R-Paket geben, das es auch besser als SAS handhabt.

Für was es wert ist, lernte ich Modellierung auf Minitab und es schien tatsächlich die Modellierung ziemlich gut zu handhaben, so dass es einen Blick wert sein könnte.

HTH!

+0

vielen Dank für Ihren Beitrag :)! Nun, ich habe herausgefunden, dass 'PROC MIXED' die Statistik angibt. – stan

+0

Kein Problem. Hoffe, dass es hilft - klingt wie MIXED bekommt Sie, was Sie brauchen. :) – TARehman