Можете ли вы рассчитать мощность теста Колмогорова-Смирнова в R?

10

Можно ли провести силовой анализ для двустороннего теста Колмогорова Смирнова в R?

Я проверяю, отличаются ли два эмпирических распределения с помощью ks.test (), и собираюсь добавить анализ мощности.

Мне не удалось найти какой-либо встроенный анализ мощности для испытаний KS в R. Есть предложения?

Изменить : это случайно сгенерированные распределения, которые близко приближаются к моим данным (с истинными размерами выборки и оценочными темпами затухания для экспоненциальных распределений)

set.seed(100)
x <- rexp(64, rate=0.34)
y <- rexp(54,rate=0.37)

#K-S test: Do x and y come from same distribution?
ks.test(x,y)

Эти данные являются измерениями размера тела в двух разных группах. Я хочу показать, что две группы имеют по существу одинаковое распределение, но соавтор спросил меня, могу ли я сказать это в зависимости от размеров выборки. Я случайно выбрал экспоненциальное распределение, но оно близко к реальным данным.

До сих пор я говорил, что нет существенной разницы в этих дистрибутивах, основанных на двустороннем тесте KS. Я также подготовил два распределения. Как я могу показать, что у меня есть право сделать такое заявление, учитывая размеры выборки и скорости затухания для x и y?

Сара
источник
4
Мощность будет зависеть от многих вещей, поэтому не было бы встроенного для двух тестов. Вы можете моделировать для заданных ситуаций. Итак: власти дали какие предположения о ситуации? Против какой альтернативы или последовательности альтернатив? Например, вы могли бы вычислить (смоделировать) кривую мощности для экспоненциально распределенных данных в сравнении с набором альтернатив смещения масштаба. Или вы можете вычислить мощность для нормали против сдвига местоположения. Или вы можете вычислить мощность в Вейбулле, когда вы меняете параметр формы. У вас есть дополнительные детали?
Glen_b
Чтобы реально рассчитать мощность, вам также понадобятся размеры выборки. Если вы пытаетесь идентифицировать размер выборки с учетом заданной мощности по конкретной альтернативе, это можно сделать с помощью поиска корня, но часто вы можете найти точку с помощью простых подходов (попробуйте пару размеров выборки, как правило, достаточно, чтобы подобраться очень близко ).
Glen_b
Какая переменная измеряется? Это времена?
Glen_b
@Glen_b Это не времена. Они измеряют размер тела в двух разных группах. Я хочу показать, что эти две группы имеют по существу одинаковое распределение, но меня спросили, имел ли я право сказать это на основе размеров выборки.
Сара
1
Ах! Это два полезных контекста, которые могут помочь в вашем вопросе. Таким образом, идея заключается в том, что если вы покажете, что способность идентифицировать некоторые условно скромные различия была разумной, можно было бы принять отказ от отклонения как признак того, что разница была небольшой. Да, предварительный анализ мощности может помочь с этим аргументом. После этого я, вероятно, сконцентрируюсь больше на чем-то вроде оценки (и, возможно, доверительного интервала) изменения масштаба как показателя того, что разница на самом деле невелика по размеру, а также на графике двух образцов cdf.
Glen_b

Ответы:

16

Найти силу против экспоненциальных альтернатив со сдвигом масштаба достаточно просто.

Тем не менее, я не знаю , что вы должны использовать значение , вычисленное из данных , чтобы выяснить , что власть может быть. Такого рода вычисления мощности по принципу hoc имеют тенденцию приводить к нелогичным (и, возможно, вводящим в заблуждение) выводам.

Власть, как и уровень значимости, - это феномен, с которым вы сталкиваетесь до факта; вы бы использовали априорное понимание (включая теорию, рассуждения или любые предыдущие исследования), чтобы принять решение о разумном наборе альтернатив для рассмотрения и желаемом размере эффекта

Вы также можете рассмотреть множество других альтернатив (например, вы можете встроить экспоненту в гамма-семью, чтобы учесть влияние более или менее искаженных случаев).

Обычные вопросы, на которые можно попытаться ответить с помощью силового анализа:

1) какова мощность для данного размера выборки при некотором размере эффекта или наборе размеров эффекта *?

2) насколько велик эффект, определяемый размером выборки и мощностью?

3) Какой размер выборки необходим при желаемой мощности для определенного размера эффекта?

* (где здесь «величина эффекта» подразумевается в общем и может быть, например, конкретным соотношением средств или разностью средств, не обязательно стандартизированным).

Очевидно, у вас уже есть размер выборки, так что вы не в случае (3). Вы могли бы разумно рассмотреть вариант (2) или вариант (1).

Я бы предложил вариант (1) (который также дает возможность разобраться с вариантом (2)).

Чтобы проиллюстрировать подход к случаю (1) и увидеть, как он относится к случаю (2), давайте рассмотрим конкретный пример с:

  • альтернативы масштабного сдвига

  • экспоненциальные популяции

  • размеры выборки в двух выборках по 64 и 54

Поскольку размеры выборки различны, мы должны рассмотреть случай, когда относительный разброс в одной из выборок меньше и больше 1 (если они были одинакового размера, соображения симметрии позволяют рассмотреть только одну сторону). Однако, поскольку они довольно близки к одинаковому размеру, эффект очень мал. В любом случае исправьте параметр для одного из образцов и измените другой.

Итак, что вы делаете:

Заблаговременно:

choose a set of scale multipliers representing different alternatives
select an nsim (say 1000)
set mu1=1

Чтобы сделать расчеты:

for each possible scale multiplier, kappa 
  repeat nsim times
    generate a sample of size n1 from Exp(mu1) and n2 from Exp(kappa*mu1)
    perform the test
  compute the rejection rate across nsim tests at this kappa

В R я сделал это:

alpha = 0.05
n1 = 54
n2 = 64
nsim = 10000
s = c(1.1,1.2,1.5,2,2.5,3) # set up grid for kappa
s = c(1/rev(s),1,s)        #  also below and at 1
rr = array(NA,length(s))   # to hold rejection rates

for(i in seq_along(s)) rr[i]=mean(replicate(nsim,
                                    ks.test(rexp(n1,1),rexp(n2,s[i]))$p.value)<alpha
                                 )

plot(rr~s,log="x",ylim=c(0,1),type="n") #set up plot
points(rr~rev(s),col=3) # plot the reversed case to show the (tiny) asymmetry+noise
points(rr~s,col=1) # plot the "real" case last 
abline(h=alpha,col=8,lty=2) # draw in alpha

который дает следующую степень "кривой"

введите описание изображения здесь

Ось X находится в логарифмическом масштабе, ось Y - коэффициент отклонения.

Трудно сказать здесь, но черные точки немного выше слева, чем справа (то есть, мощность немного больше, когда больший образец имеет меньший масштаб).

Используя обратный нормальный cdf в качестве преобразования коэффициента отклонения, мы можем сделать соотношение между преобразованным коэффициентом отклонения и логарифмом каппа (каппа находится sна графике, но ось x логарифмирована) очень почти линейно (за исключением около 0 ), и количество симуляций было достаточно высоким, чтобы шум был очень низким - мы можем просто проигнорировать его для настоящих целей.

Таким образом, мы можем просто использовать линейную интерполяцию. Ниже показаны приблизительные размеры эффекта для мощности 50% и 80% при ваших размерах выборки:

введите описание изображения здесь

Размеры эффекта на другой стороне (большая группа имеет меньший масштаб) лишь незначительно смещены от этого (может получить немного меньший размер эффекта), но это не имеет большого значения, поэтому я не буду разбираться с этим вопросом.

Таким образом, тест подберет существенную разницу (из соотношения шкал 1), но не небольшую.


Теперь о некоторых комментариях: я не думаю, что проверки гипотез особенно важны для основного вопроса, представляющего интерес ( действительно ли они похожи? ), И, следовательно, эти вычисления мощности не говорят нам ничего, что имеет непосредственное отношение к этому вопросу.

Я думаю, что вы решаете этот более полезный вопрос, заранее указав, что, по вашему мнению, «по сути, то же самое» означает на практике. Это - рационально направленное на статистическую деятельность - должно привести к содержательному анализу данных.

Glen_b - Восстановить Монику
источник
Спасибо огромное! Это действительно полезно, высоко ценится.
Сара
0

Поскольку Колмогоров-Смирнов непараметрический, то по определению не может быть применимого анализа мощности. Чтобы получить какую-то оценку, вам нужно принять фоновую модель (и, таким образом, отклониться от непараметрического мира ...) и использовать ее для вычисления одного из следующих параметров: размер выборки, MDE или мощность (т. Е. Вы исправить / выбрать два и вычислить третий).

MDman
источник