Поправки для собственных уровней значимости при множественных сравнениях
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 | * Поправки для собственных уровней значимости при множественных сравнениях. * Рей, * посылаю улучшенную версию синтаксиса с реализацией алгоритмов * расчета скорректированных уровней значимости (p, p-values). * Я добавила несколько "восходящих" (step-up) методов и описание к каждому * алгоритму. * Marta Garcia-Granero. 14.04.2002. ************************** Заявление о снятии ответственности Данный синтаксис предоставляется "как есть" без каких-либо гарантий. Риск, связанный с качеством, производительностью и пригодностью его для ваших целей вы полностью принимаете на себя. Пользуясь данной программой, вы также принимаете на себя всю ответственность, связанную с выбором конкретного алгоритма и последующим использованием результатов, полученных с помощью данной программы. ОПИСАНИЕ Реализовано 8 алгоритмов корректировки уровня значимости. Они разделяются на "одношаговые" (one-step), "нисходящие" (step-down) и "восходящие" (step-up) алгоритмы. 1. "Одношаговый" алгоритм Бонферрони (Bonferroni) 2. "Одношаговый" алгоритм Сидака (Sidak, см. ссылки 1 и 2] 3. "Нисходящий" алгоритм Холма (Holm, см. 3) 4. "Нисходящий" алгоритм Сидака (Sidak, см. 1,2,4 и 5) 5. "Нисходящий" алгоритм Финнера (Finner, 4 и 5] 6. "Восходящий" алгоритм Хоммеля (Hommel, см. 6 и 7) 7. "Восходящий" алгоритм Хокберга (Hochberg, 8) 8. "Восходящий" алгоритм Саймса (Simes, 9) Корректность реализации проверена утилитой Multiplicity (2.0) (автор - Barry W. Brown. Университет Техаса, Раковый центр Андерсона (M D Anderson Cancer Center)). АЛГОРИТМЫ Используем следующие обозначение: n = число уровней значимости (p-values) p(i) = i-й уровень значимости по порядку, начиная с наименьшего, i=1..n p#(i) = скорректированный (исправленный) вариант уровня значимости p(i) В одношаговых алгоритмах собственные уровни значимости (p-values) сравниваются с предопределенным значением, которое является функцией от альфа (заданного уровня значимости) и n - числа уровней значимости. (Здесь и далее автор дает классическое словесное описание алгоритмов, когда предполагается корректировка наперед заданного уровня значимости "альфа" для сравнения с собственными уровнями значимости проверок (обычно это предполагает уменьшение "альфа"). На самом же деле синтаксис проводит корректировку собственных уровней значимости, чтобы упростить процедуру сравнения с наперед заданным значением альфа (например, 0.05, 0.01, 0.001 и т.д.) (обычно это предполагает увеличение p(i) - примеч. перев.) - "Одношаговый" алгоритм Бонферрони: p#(i)=n*p(i) - "Одношаговый" алгоритм Сидака: p#(i)=1-(1-p(i))^n В нисходящих методах значения p-values обрабатываются в порядке от меньшего к большему. Как только обнаруживается p-value, достаточно большое (с точки зрения критерия на основе альфа и позиции значения p-value в упорядоченном списке), данное p-value и ВСЕ последующие (большие, чем данное), не позволяют отвергнуть соответствующие нулевые гипотезы. - "Нисходящий" алгоритм Холма: p#(i)=(n-i+1)*p(i) - "Нисходящий" алгоритм Сидака: p#(i)=1-(1-p(i))^(n-i+1) - "Нисходящий" алгоритм Финнера: p#(i)=1-(1-p(i))^(n/i) В восходящих алгоритмах значения p-values исследуются в порядке от большего к меньшему. Как только обнаруживается значение p-value, достаточно малое (с точки зрения критерия, основанного на альфа и позиции p-value в упорядоченном списке), данное p-value и ВСЕ последующие (меньшие, чем данное) ведут к отвержению соответствующих нулевых гипотез. - "Восходящий" алгоритм Хоммеля: p#(i)=n*Cn*p(i)/i Cn=1+1/2+ ... +1/n - "Восходящий" алгоритм Хокберга: p#(i)=(n-i+1)*p(i) - "Восходящий" алгоритм Саймса: p#(i)=n*p(i)/i См. в [10] общий справочный материал по алгоритмам коррекции собственных уровней значимости. ЛИТЕРАТУРА 1. Sidak Z (1967) "Rectangular Confidence Regions for the Means of Multivariate Normal Distributions" American Statistical Association, 62, 626-633. 2. Sidak Z (1971) "On probabilities of rectangles in multivariate Student distributions: their dependence on correlations" Ann Math Statist, 42, 169-175. 3. Holm S (1979) "A Simple Sequentially Rejective Multiple Test Procedure" Scandinavian Journal of Statistics, 6, 65-70. 4. Finner H (1990) "Some New Inequalities for the Rnad Distribution With Application to the determination of Optimum Significance Levels of Multiple Range Tests" Journal of the American Statistical Association, 85, 191-194. 5. Finner H (1993) "On A Monotonicity Problem in Step-Down Multiple Test Procedures" Journal of the American Statistical Association, 88, 920-923. 6. Hommel G (1988) "A stagewise rejective multiple test procedure based on a modified Bonferroni test" Biometrika, 75, 383-386. 7. Falk RW (1989) "Hommel's Bonferroni-type inequality for unequally spaced levels" Biometrika, 76, 190-191. 8. Hochberg Y and Benjamini Y (1990) "More powerful procedures for multiple significance testing" Statistics in Medicine, 9, 811-818. 9. Simes RJ (1986) "An improved Bonferroni procedure for multiple tests of significance" Biometrika, 73, 751-754. 10. Westfall PH and Young SS (1993), Resampling-Based Multiple Testing: examples and methods for p-value adjustment. New York: John Wiley and Sons. ********************************************************************************. * НАЧАЛО СИНТАКСИСА * Создадим набор данных с собственными уровнями значимости. Замените их на те, что есть у вас *. DATA LIST list / pvalue(f9.4). BEGIN DATA 0.0728 0.0023 0.3829 0.0041 0.0101 0.4557 END DATA. * НЕКОТОРЫЕ ДОПОЛНИТЕЛЬНЫЕ ПЕРЕМЕННЫЕ *. COMPUTE id=$CASENUM. FORMAT id (F2.0). SORT CASES BY pvalue (A) . COMPUTE pos=$CASENUM. FORMAT pos (F2.0). *>>>>> Этот раздел добавлен Реем Левеком <<<<<<<. * Найдем число значений p-value. RANK pvalue /n into N /PRINT=NO. * Переменная N содержит икомую величину (фактически - число наблюдений в файле). *>>>>>> Конец раздела, добавленного Реем <<<<<<<. * РАСЧЕТ ИСПРАВЛЕННЫХ ЗНАЧЕНИЙ P-VALUES *. * (1) Одношаговые методы *. COMPUTE bonferr=pvalue*n. IF bonferr>1 bonferr=1. COMPUTE sidak=1-(1-pvalue)**n. * (2) Нисходящие методы *. COMPUTE holm=(n-pos+1)*pvalue. IF holm>1 holm=1. IF (holm<LAG(holm,1)) holm=LAG(holm,1). COMPUTE downsidk=1-(1-pvalue)**(n-pos+1). IF (downsidk<LAG(downsidk,1)) downsidk=LAG(downsidk,1). COMPUTE finner=1-(1-pvalue)**(n/pos). IF (finner<LAG(finner,1)) finner=LAG(finner,1). * (3) Восходящие методы *. COMPUTE cn=1/pos. DO IF $casenum>1. COMPUTE cn=cn+lag(cn,1). END IF. SORT CASES BY pos(D). IF cn<lag(cn,1) cn=lag(cn,1). COMPUTE hommel = cn*n*pvalue/pos. IF hommel>1 hommel=1. IF (hommel>LAG(hommel,1)) hommel=LAG(hommel,1). COMPUTE hochberg=(n-pos+1)*pvalue. IF (hochberg>LAG(hochberg,1)) hochberg=LAG(hochberg,1). COMPUTE simes=n*pvalue/pos. IF (simes>LAG(simes,1)) simes=LAG(simes,1). * ВЫВОД РЕЗУЛЬТАТОВ *. FORMAT bonferr to simes (f9.4). VARIABLE LABELS id '№№' /pvalue 'p исходн.' /pos 'Ранг' /bonferr 'Одношаговый Бонферрони' /sidak 'Одношаговый Сидака' /holm 'Нисходящий Холма' /downsidk 'Нисходящий Сидака' /finner 'Нисходящий Финнера' /hommel 'Восходящий Хоммеля' /hochberg 'Восходящий Хокберга' /simes 'Восходящий Саймса'. SORT CASES BY pos (A). REPORT FORMAT=LIST AUTOMATIC ALIGN(CENTER) /VARIABLES=pos id pvalue bonferr sidak /TITLE "Исходные и скорректированные величины p (одношаговые алгоритмы)". REPORT FORMAT=LIST AUTOMATIC ALIGN(CENTER) /VARIABLES=pos id pvalue holm downsidk finner /TITLE "Исходные и исправленные величины p (нисходящие алгоритмы)". REPORT FORMAT=LIST AUTOMATIC ALIGN(CENTER) /VARIABLES=pos id pvalue hommel hochberg simes /TITLE "Исходные и исправленные величины p (восходящие алгоритмы)". ********************************************************************************. * КОНЕЦ СИНТАКСИСА. |
Related pages
...