data mult; input G Y1 Y2 Y3; datalines; 0 14.4 7.00 4.30 0 14.6 7.09 3.88 0 13.8 7.06 5.34 0 10.1 4.26 4.26 0 11.1 5.49 4.52 0 12.4 6.13 5.69 0 12.7 6.69 4.45 1 11.8 5.44 3.94 1 18.3 1.28 0.67 1 18.0 1.50 0.67 1 20.8 1.51 0.72 1 18.3 1.14 0.67 1 14.8 2.74 0.67 1 13.8 7.08 3.43 1 11.5 6.37 5.64 1 10.9 6.26 3.47 ; proc reg data=mult; model Y1 Y2 Y3 = G; H1: mtest Y1; H2: mtest Y2; H3: mtest Y3; H12: mtest Y1, Y2; H13: mtest Y1, Y3; H23: mtest Y2, Y3; H123: mtest Y1, Y2, Y3; run; proc multtest data=mult holm pvals; class g; test mean(Y1 Y2 Y3); contrast "0 vs 1" -1 1; run; data pvals; input test$ raw_p @@; datalines; Y1 .0982 Y2 .0262 Y3 .0067 proc multtest pdata=pvals holm out=results; proc print data=results; run; proc multtest data=mult holm stepboot pvals n=1000000; class g; test mean(Y1 Y2 Y3); contrast "0 vs 1" -1 1; run; proc multtest data=mult holm stepperm pvals n=1000000; class g; test mean(Y1 Y2 Y3); contrast "0 vs 1" -1 1; run; data mult_bin; set mult; B1 = (Y1>15); B2 = (Y2>5); B3 = (Y3>3); run; proc multtest data=mult_bin pvalsum stepperm n=200000 seed=121211; class g; test fisher(B1 B2 B3); contrast "0 vs 1" -1 1; run; proc rank data=mult out=rankmult; var Y1 Y2 Y3; run; proc multtest data=rankmult holm stepperm pvals n=1000000; class g; test mean(Y1 Y2 Y3); contrast "0 vs 1" -1 1; run; proc multtest pdata=pvals hommel; run; proc multtest pdata=pvals fisher_c; run; data compare; do group = 0 to 3; do rep = 1 to 4; input y @@; output; end; end; datalines; 89.8 93.8 88.4 112.6 84.4 116.0 84.0 68.6 64.4 79.8 88.0 69.4 75.2 62.4 62.4 73.8 ; proc multtest data=compare stepboot n=100000; class group; test mean(y); contrast "3 vs 0" -1 0 0 1 ; contrast "2 vs 0" -1 0 1 0 ; contrast "1 vs 0" -1 1 0 0 ; run; proc multtest data=compare stepboot n=100000; class group; test mean(y); contrast "1 vs 0" -1 1 0 0 ; contrast "2 vs 0" -1 0 1 0 ; contrast "3 vs 0" -1 0 0 1 ; contrast "2 vs 1" 0 -1 1 0 ; contrast "3 vs 1" 0 -1 0 1 ; contrast "3 vs 2" 0 0 -1 1 ; run; %MakeGLMStats(dataset=compare, yvar=y, classvar=group, model=group, contrasts=all(group) ); %SimTests(nsamp=20000,type=LOGICAL); data binary; input b f g$; datalines; 0 1 A 1 3 A 0 3 B 1 1 B 0 2000 C ; proc multtest stepperm order=data; class g; freq f; test fisher(b/upper); contrast " b - a " -1 1 0 ; contrast " a - c " 1 0 -1 ; run;