#r #confidence-interval
#r #доверительный интервал
Вопрос:
Мне нужно получить 90% доверительный интервал вокруг медианы.
x <- c(251, 108, 27, 18, 195, 82, 222, 38, 81, 181, 140, 21, 43, 47, 15, 37, 46, 107, 19, 178, 95, 130, 60, 34, 48, 219, 338, 78, 117, 62, 40, 52)
MedianCI(x, conf.level=0.9)
результат
median lwr.ci upr.ci
70 46 108
attr(,"conf.level") [1] 0.9498975
Он генерирует интервал для уровня 0,949, но я хочу 0,9. Как правильно это сделать? Правильный ответ должен быть (70, 47, 108).
Комментарии:
1. из какого пакета это? медианы, и тем более СНГ медиан, будут очень чувствительны в небольших наборах данных к точному определению квантиля (которых много …)
2. @akrun Хорошая идея. Я пробовал это, но в этом случае я получаю 89% достоверности, что меньше 90%.
3. Могу я спросить, откуда вы знаете правильный ответ? @akrun,
method="boot"
дает {34, 93}.4. например,
sapply(1:9,function(i) quantile(x,0.5,type=i))
дает либо 62, либо 70 в зависимости от используемого метода …5. @BenBolker Я использую
DescTools
пакет. Я понимаю, что это будет чувствительно. Я бы использовал его для большого набора данных. Пока просто пробую это для небольших наборов данных. Это проблема наряду с решением вручную из книгиQuantifying the User Experience by Jeff Sauro
Ответ №1:
Здесь есть две основные проблемы.
-
Метод, приведенный в книге, является приблизительным. Как утверждает автор, это, вероятно, подходит для большинства наборов данных с большой выборкой, но на самом деле это дальше от «правильного», чем методы, реализованные
MedianCI
-
Особенно для небольших наборов данных маловероятно, что доверительный интервал (каким бы вычисленным он ни был) будет точно соответствовать наблюдению в наборе данных: вот почему автор говорит
Результаты уравнения округляются до следующего целого числа, а граница доверительного интервала находится между двумя значениями в наборе данных.
(Мне непонятно, почему результаты округляются в большую сторону как для нижнего, так и для верхнего предела CI; Я бы ожидал, что они будут округлены в большую сторону для верхнего предела и в меньшую для нижнего предела …)
Предоставление вам доверительного интервала 0,949 вместо запрошенных вами 0,9 MedianCI
является консервативным (типичным определением CI является интервал, который включает истинное значение не менее x% времени); доверительный уровень 0,89-0,94 даст вам уровень 0,949, в то время как значения от 0,79-0,88даст вам уровень 0,889.
Если у вас есть дополнительные вопросы о технических деталях моего ответа, вам, вероятно, следует задать вопрос в CrossValidated. Я не знаю, есть ли где-нибудь в пакете R удобная встроенная функция, которая реализует приблизительный метод, приведенный в книге (хотя для его реализации требуется только навык R для начинающих; если вы хотите попробовать, попробуйте и не стесняйтесь спрашивать другоговопрос, когда вы застреваете …)