The MULTTEST Procedure

Example 79.5 Inputting Raw p-Values

This example illustrates how to use PROC MULTTEST to multiplicity-adjust a collection of raw p-values obtained from some other source. This is a valuable option for those cases where PROC MULTTEST cannot compute the raw p-values directly. The data set a, which follows, contains the unadjusted p-values computed in Example 79.4. Note that the data set needs to have one variable containing the p-values, but the data set can contain other variables as well.

data a;
   input Test$ Raw_P @@;
   datalines;
test01  0.28282    test02  0.30688    test03  0.71022    
test04  0.77175    test05  0.78180    test06  0.88581    
test07  0.54685    test08  0.84978    test09  0.24228    
test10  0.58977    test11  0.03498    test12  0.41607    
test13  0.31631    test14  0.05254    test15  0.45061    
test16  0.75758    test17  0.12496    test18  0.49485    
test19  0.21572    test20  0.50505    test21  0.94372    
test22  0.81260    test23  0.77596    test24  0.36889    
;
proc multtest inpvalues=a holm hoc fdr;
run;

Note that the PROC MULTTEST statement is the only statement that can be specified with the p-value input mode. In this example, the raw p-values are adjusted by the Holm , Hochberg , and FDR methods.

The "P-Value Adjustment Information" table, displayed in Output 79.5.1, provides information about the requested adjustments and replaces the usual "Model Information" table. The adjusted p-values are displayed in Output 79.5.2

Output 79.5.1: Inputting Raw p-Values

The Multtest Procedure

P-Value Adjustment Information
P-Value Adjustment Stepdown Bonferroni
P-Value Adjustment Hochberg
P-Value Adjustment False Discovery Rate



Output 79.5.2: p-Values

p-Values
Test Raw Stepdown Bonferroni Hochberg False Discovery
Rate
1 0.2828 1.0000 0.9437 0.9243
2 0.3069 1.0000 0.9437 0.9243
3 0.7102 1.0000 0.9437 0.9243
4 0.7718 1.0000 0.9437 0.9243
5 0.7818 1.0000 0.9437 0.9243
6 0.8858 1.0000 0.9437 0.9243
7 0.5469 1.0000 0.9437 0.9243
8 0.8498 1.0000 0.9437 0.9243
9 0.2423 1.0000 0.9437 0.9243
10 0.5898 1.0000 0.9437 0.9243
11 0.0350 0.8395 0.8395 0.6305
12 0.4161 1.0000 0.9437 0.9243
13 0.3163 1.0000 0.9437 0.9243
14 0.0525 1.0000 0.9437 0.6305
15 0.4506 1.0000 0.9437 0.9243
16 0.7576 1.0000 0.9437 0.9243
17 0.1250 1.0000 0.9437 0.9243
18 0.4949 1.0000 0.9437 0.9243
19 0.2157 1.0000 0.9437 0.9243
20 0.5051 1.0000 0.9437 0.9243
21 0.9437 1.0000 0.9437 0.9437
22 0.8126 1.0000 0.9437 0.9243
23 0.7760 1.0000 0.9437 0.9243
24 0.3689 1.0000 0.9437 0.9243



Note that the adjusted p-values for the Hochberg method are less than or equal to those for the Holm (Step-down Bonferroni) method. In turn, the adjusted p-values for the FDR method (False Discovery Rate) are less than or equal to those for the Hochberg method. These comparisons hold generally for all p-value configurations. The FDR method controls the false discovery rate and not the familywise error rate. The Hochberg method controls the familywise error rate under independence. The Holm method controls the familywise error rate without assuming independence.