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;
より伝統的な ANOVA を行うには、転置する必要があります。
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;
以下に 2 つのブロックがあります。1 つは従来の ANOVA 形式で、もう 1 つは 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;
反復測定を処理することは、被験者間ではなく、被験者内の変動を処理することです。最初のモデルはエラー項がないため失敗します。これは、モデルのすべての分散を 3 つの項でうまく説明できたためです。用語は、血液がどの井戸にあるか、どの主題であるか、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 ステートメントを使用して、テューキー調整平均を求めます。E=well(idnum) は、これらの手段の誤差項として well(idnum) を使用するようにシステムに指示します。次に、2 番目の 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
ご覧のとおり、測定を繰り返すと、well の同じエラー ステートメントが識別されます。ただし、私の知る限り、CLASS ステートメントを使用しないと、SAS のモデリング手順から手段を得ることができません。したがって、これを回避する1つの方法は、私が行ったモデルを再構築して「システムを操作する」ことです。または、Tukey HSD を手動で計算することもできます。SASよりもうまく処理できるRパッケージもあるかもしれません。
価値のあることとしては、Minitab でモデリングを学びましたが、実際にモデリングをかなりうまく処理しているように見えたので、一見の価値があるかもしれません。
チッ!