На этой странице

Планирование анализа — методические заметки

Решения, на которых построен модуль планирования анализа: какая процедура, правило округления, верхняя граница или отказ стоит за ответом каждого инструмента, и подтверждающие их числа. Все числа получены при значениях по умолчанию. Разделы следуют разделам руководства.

Анализ мощности

Многофакторный дисперсионный анализ планируется по df ошибки, а для регрессии df пересчитываются обратно в объём выборки. pwr.f2.test принимает степени свободы числителя и знаменателя, u и v, но не объём выборки, поэтому оба плана с f² решаются относительно v. План регрессии известен из введённых данных (u предикторов и свободный член), так что модуль переводит результат обратно, N = v + u + 1, и сообщает объём выборки. Структура ячеек многофакторного плана здесь не вводится, и по его v объём не восстановить, поэтому карточка сообщает необходимые df ошибки. Те же df перебирают таблица чувствительности и графики.

Проверка. При f² = 0.15, α = 0.05 и мощности 0.80 три предиктора дают v = 72.71 и необходимый объём 77. Для многофакторного эффекта с 2 df необходимые df знаменателя равны 64.32, и сообщается 65.

Общий N — это округлённый n на группу, умноженный на число групп. pwr возвращает дробный n на группу, и карточка округляет его вверх, поскольку набрать долю наблюдения нельзя. Общий объём в скобках — это полученное целое, умноженное на два (в однофакторном дисперсионном анализе — на k), поэтому два числа в рамке согласованы. Если удвоить дробный n и округлить произведение, общий объём иногда оказывался бы на единицу меньше удвоенного числа на группу.

Проверка. При d = 0.50, α = 0.05 и мощности 0.80 t-критерию для независимых выборок нужно 63.77 наблюдения на группу, и сообщается 64 (Итого: 128). Однофакторному дисперсионному анализу с тремя группами при f = 0.25 нужно 52.40 на группу, и сообщается 53 при общем объёме 159.

Нулевой эффект отклоняется ещё до запуска R. Поле корреляции допускает отрицательные значения, поэтому его нижняя граница ноль не отсекает, а эффект, в точности равный нулю, не обнаружит никакой план: поиску корня в pwr не на чем остановиться. Поэтому модуль не передаёт такое значение дальше, а отказывает в расчёте с сообщением.

Таблица чувствительности пересчитывает мощность при пяти долях округлённого опорного n, а найденный эффект подставляется обратно. Опорное значение — округлённый n с карточки или введённый, а сетка — его произведения на 0.5, 0.75, 1, 1.25 и 1.5, каждое округлённое вверх и не меньше 2. Поэтому строка 100% совпадает с числом на карточке, а каждая ячейка — заново вычисленная pwr мощность, а не интерполяция. Если расчёт искал эффект, таблица строится по найденному эффекту, и её строки описывают именно полученный план.

Проверка. Таблица для t-критерия по умолчанию: 32 → 0.504, 48 → 0.679, 64 → 0.801, 80 → 0.882 и 96 → 0.931.

Кривая мощности обрывается там, где мощность достигает 0.99, а сетка тепловой карты фиксирована: семь объёмов на шесть эффектов. Кривая вычисляется в 80 точках от пятой части опорного n (не меньше 4) до пятикратного и обрезается на первой точке, где мощность достигает 0.99 или целевой мощности, если та выше: дальше кривая плоская и лишь сжала бы важную область. Ось продлевается до следующего круглого числа, где вычисляется ещё одна точка, чтобы линия доходила до края. Если ни одна точка не вычислена (все NA), график не рисуется и выводится сообщение, поскольку у d3 нет данных, по которым задать область определения шкалы. Сетка тепловой карты — опорный n, умноженный на 0.4, 0.6, 0.8, 1, 1.4, 2 и 3 (не меньше 4), на введённый эффект, умноженный на 0.4, 0.7, 1, 1.3, 1.6 и 2 (не меньше 0.01, повторы отбрасываются). Ячейка, которую pwr не может вычислить, показывает прочерк на сером фоне и не срывает построение графика.

Конвертер размеров эффекта

Все пересчёты идут через d Коэна, понимаемый как разность двух равных по объёму групп. Одна опорная мера сохраняет согласованность всех четырнадцати строк ценой небольших погрешностей округления между мерами, отличными от d. Из d: r=d/d2+4 — точечно-бисериальная связь для равных групп; η2=d2/(d2+4) и R² = r²; f = d ⁄ 2, а f² — его квадрат; w = r, поскольку w Коэна на таблице 2 × 2 — это φ; отношение шансов равно exp⁡(dπ/3) по логистической связи; CLES равен Φ(d/2). Для входной стороны каждая формула обращается. Значение h Коэна в обе стороны принимается как величина в шкале d, а строка h вычисляется по двум долям, 2|arcsin⁡p1−arcsin⁡p2|, поскольку по одному d значение h не найти.

Проверка. d = 0.50 переводится в r = 0.243, R² = 0.059, f = 0.250, f² = 0.063, w = 0.243, отношение шансов 2.477 и CLES 0.638.

Строка введённой меры хранит значение в том виде, как оно набрано. Повторный вывод введённой меры через d неточен: значение, введённое ровно на опубликованной границе, возвращалось на несколько единиц младшего разряда меньше и попадало на ступень ниже, так что 0.50 для d читалось как «малый». Поэтому строка введённой меры содержит значение как есть и интерпретируется по нему, а все остальные строки выводятся через d.

η² и частичная η² совпадают, а ω² пересчитывается как η². Одно значение d описывает один фактор, поэтому в плане нет второго эффекта, влияние которого можно было бы исключить, и обе строки содержат одно и то же число, в том числе когда одна из них была входной. Для омега-квадрата берётся та же связь с f, f=ω2/(1−ω2), а собственной строки в выводе у него нет: при однофакторном прочтении ему нечего добавить к эта-квадрату.

Проверка. При d = 0.50 и η², и частичная η² равны 0.059.

Поправка g Хеджеса вычисляется при N − 2 степенях свободы и требует шести наблюдений. Поправочный множитель равен J=1−3/(4(N−2)−1), где N — общий объём обеих групп. Число N − 2 — это df для независимых групп, то есть тот же план, что уже заложен в константу связи d ↔ r. Поправка применяется, только если N − 2 ≥ 4. При меньшем числе наблюдений g прошёл бы в вывод как d без изменений, поэтому конвертер отклоняет входное g при N < 6, а не выдаёт нескорректированное число за результат пересчёта.

Проверка. d = 0.50 при N = 30 даёт g = 0.486 (J = 0.973).

Значение V Крамера ограничено формой таблицы. V = w ⁄ √df, где df = min(строки − 1, столбцы − 1), а w конвертера — это φ, который при прочтении таблицы как 2 × 2 не превышает 1. Поэтому за значением V на уровне 1 ⁄ √df или выше не стоит никакого d, и модуль отклоняет его, называя границу, вместо того чтобы вывести таблицу прочерков. Без размерности таблицы строка V недоступна, поскольку для её вывода из w нужно то же df.

Проверка. Таблица 3 × 4 допускает V меньше 0.707, таблица 2 × k — меньше 1.

NNT требует базовой частоты и оценивается по собственной шкале. По соотношению Кремер — Купфера частота событий в группе лечения равна Φ(d/2+Φ−1(CER)), а NNT — единице, делённой на её отличие от частоты в контроле, так что без частоты событий в контроле NNT не существует. При пустом поле частота принимается равной 0.50, а при частоте вне (0, 1) строка недоступна. В обратную сторону: если NNT требует частоты в группе лечения вне (0, 1), ему не соответствует никакой d, и во всей таблице стоит требует допустимого значения, а не нулевой d, который читался бы как отсутствие эффекта. Шкала величины у NNT направлена иначе, чем у всех остальных мер (чем меньше NNT, тем сильнее эффект), поэтому семейства в реестре у него нет: больше 50 — пренебрежимый, больше 10 — малый, больше 4 — средний, иначе — большой.

Проверка. d = 0.50 при частоте событий в контроле 0.50 даёт NNT 7.24 — средний эффект.

Интерпретации берутся из реестра величин приложения, а три меры сначала переводятся в шкалу своего семейства. Границы общие для всех карточек результатов, поэтому пересчитанное число попадает на ту же ступень, что и на карточке, где оно получено, а значение на границе — на ступень, которую граница обозначает. Перед отнесением к ступени три меры приводятся к шкале своего семейства: отношение шансов сворачивается в max(OR, 1 ⁄ OR), поскольку 0.5 и 2 — эффект одной величины, а неположительное или бесконечное отношение означает полное разделение; CLES — в max(c, 1 − c), поскольку его величина лежит на [0.5, 1]; V Крамера умножается обратно на √df, чтобы сравниваться с границами для w, по тому же правилу, что и в модуле сравнения.

Планирование поправки на множественные сравнения

У методов Холма и Хохберга одна общая строка, а у метода Хоммеля строки нет. Обе пошаговые процедуры сравнивают i-е по возрастанию p-значение с α/(m−i+1) и различаются только направлением: нисходящий метод Холма начинает с наименьшего p и останавливается на первой гипотезе, не прошедшей порог, а восходящий метод Хохберга начинает с наибольшего и останавливается на первой прошедшей. Поэтому обоим служит один столбец порогов, и вторая строка лишь повторяла бы первую. Процедура Хоммеля мощнее обеих, но отвергает гипотезы замкнутой проверкой по пересечениям Саймса, а не сравнением каждого p-значения с константой для его ранга. Столбец порогов её не описывает, и строка с ним исказила бы её суть. Об этом сообщает примечание под таблицей, и метод цитируется вместе с остальными, потому что примечание его называет.

Проверка. Десять сравнений при α = 0.05 дают в общей строке 0.005 для ранга 1, 0.008 для ранга 5 и 0.050 для ранга 10.

Методы Шидака и Бенджамини — Екутели выводят точные пороги. Порог Шидака равен 1−(1−α)1/m: это уровень отдельной проверки, при котором вероятность не ошибиться ни в одной из m независимых проверок составляет 1 − α, и он чуть выше α ⁄ m. Порог Бенджамини — Екутели — это порог Бенджамини — Хохберга (i/m)α, делённый на гармоническую сумму ∑j=1m1/j. Деление на эту сумму распространяет гарантию на проверки с произвольной зависимостью.

Проверка. Десять сравнений при α = 0.05: порог Шидака 0.0051 против 0.0050 у Бонферрони, а пороги Бенджамини — Екутели равны 0.0017, 0.0085 и 0.0171 для рангов 1, 5 и 10 при гармонической сумме 2.929.

Планирование длины шкалы (формула Спирмена — Брауна)

Необходимое число пунктов округляется вверх и не бывает меньше одного, а повторяющиеся строки таблицы прогноза убираются. Коэффициент удлинения равен k=ρt(1−ρc)/(ρc(1−ρt)) для текущей надёжности ρ_c и целевой ρ_t, а необходимое число — текущее, умноженное на k и округлённое вверх (дробную часть пункта не напишешь), но не меньше одного. Строки прогноза — половина текущего числа (с округлением вниз, не меньше одного), текущее число, полуторное (с округлением вверх), двойное и необходимое, по возрастанию. Совпадающие строки (когда необходимое число равно текущему или двойному) показываются один раз. Если необходимое число равно текущему, результат сообщает, что цель уже достигнута, а не «на 0 больше».

Проверка. От 0.70 на 10 пунктах к цели 0.80: k = 1.714, и 17.1 пункта округляются до 18. В таблице: 5 → 0.538, 10 → 0.700, 15 → 0.778, 18 → 0.808 и 20 → 0.824.

Ослабление корреляции

Оценка после поправки на аттенуацию вне [−1, 1] помечается, а не обрезается. Частное от деления наблюдаемой корреляции на rxxryy может превысить 1 по модулю, и это информация: введённые надёжности слишком низки, чтобы при них получилась наблюдаемая корреляция, так что хотя бы одна из них занижена. Модуль выводит такую оценку красным с этим пояснением, а не обрезает её до 1, что скрыло бы противоречие. Надёжности принимаются в интервале (0, 1], корреляция — в [−1, 1]. Больше ничего не отклоняется.

Проверка. Наблюдаемая корреляция 0.50 при надёжностях 0.40 и 0.50 даёт коэффициент 0.447 и оценку 1.118, которая помечается.

Планирование точности (ширина ДИ)

Объём выборки для среднего находится итерациями по t, начиная с z, а для доли — по нормальной формуле. Интервал для среднего строится по распределению t с n − 1 df, и замкнутая z-формула n=(zSD/E)2 при малых n занижает объём. Модуль берёт её результат как начальный и повторяет n=(tn−1SD/E)2 с округлением вверх, пока число не перестанет меняться, но не более десяти раз, причём df не опускаются ниже 1. Интервал для доли — интервал Вальда, поэтому объём для неё сразу равен z2p(1−p)/E2.

Проверка. При SD 1 и погрешности ± 0.50 на уровне 95% z-формула даёт 16, итерации по t — 18, а таблица для шести погрешностей — 64, 30, 18, 13, 10 и 6. Для доли 0.50 при ± 0.05 нужно 385 наблюдений.

Объём выборки для корреляции находится делением отрезка пополам с верхней границей 10 000, а погрешность за её пределами объявляется недостижимой. Интервал для r строится через z-преобразование Фишера со стандартной ошибкой 1/n−3, а у полуширины интервала, переведённого обратно в шкалу r, нет замкнутого обращения по n. Поэтому модуль делением пополам ищет наименьшее n от 4 до 10 000, при котором полуширина не превышает погрешности. Полуширина монотонна по n, так что поиск точен. Погрешность, недостижимая даже на верхней границе, объявляется недостижимой (в результате и как Недостижимо в строках таблицы), а не подменяется самой границей, как будто это и есть ответ.

Проверка. При r = 0.30 и 95% для ± 0.10 нужно 320 наблюдений, для ± 0.05 — 1274. Погрешность ± 0.01 в пределах границы недостижима.

Оптимизатор распределения по группам

Строки сравнения делят введённый общий объём с округлением первой группы вниз, а у группы меньше чем из двух наблюдений мощности нет. Каждая строка вычисляется pwr.t2n.test на одном и том же общем объёме: равное деление — это ⌊N ⁄ 2⌋ против остатка, а соотношение r₁ : r₂ даёт n₁ = ⌊N r₁ ⁄ (r₁ + r₂)⌋ и n₂ = N − n₁. Поэтому, когда общий объём не делится в заданном соотношении нацело, зеркальные соотношения различаются на одно наблюдение, и их мощности немного расходятся. Введённое распределение попадает в таблицу, если не совпадает ни с одним из семи. Его соотношение сокращается на наибольший общий делитель, а если какая-либо часть при этом оказывается больше 10, выводятся сами объёмы. У группы меньше чем из двух наблюдений нет распределения t, поэтому мощность такой строки недоступна. Такие строки не участвуют в ранжировании и идут в конце таблицы, а не занимают произвольное место. Потеря мощности — разность мощностей равного деления и введённого, в процентных пунктах.

Проверка. Две группы по 50 при d = 0.50 и α = 0.05 дают мощность 0.697. На том же общем объёме соотношение 2:1 — это 66 против 34 с мощностью 0.650, а 1:2 — 33 против 67 с мощностью 0.644.