From: Garnett McMillan on
Greetings! (Sorr this is long...)

We are designing a longitudinal study, and have the luxury of some
pilot data available to us for planning purposes. The pilot data
suggest that there is an important effect of the predictor (‘x’) on
the outcome (‘y’). I decided to use some of the methodology described
in chapter 12 of SAS for Mixed Models to identify the minimum number
of subjects needed to detect the effect observed in the pilot data
with 80% power. The result from that analysis was that we require
impossibly large numbers of subjects.

I found this somewhat surprising, and wanted to explore the
methodology from the book under much simpler circumstances without any
longitudinal component. Using either PROC POWER or PROC GLMPOWER for a
simple 2-sample t-test or ANOVA, we require a total of 40 subjects
(twice the pilot study sample size) to detect the observed effect.
Online calculators give the same requirement. The methods in Chap 12
of SAS for Mixed Models, however, require impossibly large sample
sizes, even for the greatly simplified example. I realize that this
sledge hammer approach would not be done in normal practice, but the
results should be the same.

I am certainly missing a crucial point. Any ideas??

**The pilot data;
data d1;
input x y;
datalines;
0 0
0 0
0 0
0 5
0 0
0 0
0 5
0 5
0 -5
0 -5
0 -10
1 5
1 5
1 -5
1 0
1 15
1 5
1 10
1 0
1 5
;
run;

** regress y on x and get type3 test output. This is directly from
section 12.2 in the book. Note that there are no random effects;

ods output tests3=t3;
proc mixed data = d1;
model y = x ;
run;

data f_power;
set t3;
noncen=numDF*FValue;
alpha=0.05;
FCrit = finv(1-Alpha, NumDF, DenDF, 0);
Power = 1-probF(FCrit,NumDF,DenDF,NonCen);
run;
proc print noobs data = f_power; run;
****F-statistic for predictor x is 4.32 (p=0.052) ’Observed’ power is
about 50%;

***** data augmenting by doubling the observed data so that we have 40
subjects with same response and predictor profile as in the pilot
sample. This is also from the book p482.;
data AugD1;
set d1;
do i = 1 to 2;
output;
end;
run;

***** Compute denominator degrees of freedom with augmented data;
ods output tests3=t3Aug;
proc mixed data = AugD1;
model y = x;
run;

********** Place ddfm from augmented data result into macrovar df;
proc sql; select dendf into :df from t3Aug; quit;
%put &df;

******* New Power with augmented data;
ods output tests3=t3Update;
proc mixed data = d1;
model y = x / ddf=&df.;
run;

data f_power2;
set t3update;
noncen=numDF*FValue;
alpha=0.05;
FCrit=finv(1-Alpha,NumDF, DenDF, 0);
Power = 1-probF(FCrit,NumDF,DenDF,NonCen);
run;
proc print noobs data = f_power2; run;
****F-statistic for predictor x is still 4.32 (p=0.0445) ’Observed’
power is only 0.52;
****The result is that with double the subjects we achieve only 52%
power to detect the pilot data effect size. You can augment the pilot
data by a factor of 20 and power is still only about 54%.;
From: indimatrix on
it is very useful! thank you!

---
frmsrcurl: http://compgroups.net/comp.soft-sys.sas/Issues-with-power-analysis-using-PROC-MIXED-long