Я должен найти 95% CI на медиане и других процентилях. Я не знаю, как подойти к этому. Я в основном использую R как инструмент программирования.
Я должен найти 95% CI на медиане и других процентилях. Я не знаю, как подойти к этому. Я в основном использую R как инструмент программирования.
Ответы:
Вот иллюстрация к классическому набору данных R:
> x = faithful$waiting
> bootmed = apply(matrix(sample(x, rep=TRUE, 10^4*length(x)), nrow=10^4), 1, median)
> quantile(bootmed, c(.025, 0.975))
2.5% 97.5%
73.5 77
который дает (73,5, 77) доверительный интервал на медиане.
( Примечание: исправленная версия, спасибо Джону . Я использовал в более ранней версии , что привело к путанице!)nrow
Другой подход основан на квантилях биномиального распределения.
например:
> x=faithful$waiting
> sort(x)[qbinom(c(.025,.975), length(x), 0.5)]
[1] 73 77
Проверьте бутстрап ресэмплинга. Поиск R справка для функции загрузки. В зависимости от ваших данных с передискретизацией вы можете оценить доверительные интервалы для чего угодно.
wilcox.test(..., conf.int=TRUE)
функцией R.
Есть и другие подходы: один из них основан на тесте суммы рангов Уилкоксона, примененном к одному образцу с коррекцией непрерывности. В R это может быть поставлено как:
wilcox.test(x,conf.level=0.95,alternative="two.sided",correct=TRUE)
И здесь есть CI Дэвида Олив для медианы:
Результат, основанный на подходе qbinom, не подходит для небольших выборок. Предположим, что x имеет 10 компонентов. Тогда qbinom (c (.025, .975), 10, .5) дает 2 и 8. Результирующий интервал не обрабатывает статистику порядка в нижнем хвосте симметрично статистике из верхнего хвоста; Вы должны получить либо 2 и 9, либо 3 и 8. Правильный ответ - 2 и 9. Вы можете проверить однофакторность в SAS. Поймайте здесь, вам нужно не более 0,025 вероятности ниже и выше; нижний квантиль не делает этого, так как он дает по крайней мере 0,025 в или ниже. Вы спасены снизу, потому что счетчик, который должен быть 1, должен быть сопоставлен со статистикой второго порядка, считая 0, и поэтому «выключено одним» отменяется. Эта случайная отмена не происходит сверху, и поэтому вы получаете неправильный ответ здесь. Сортировка кода (x) [qbinom (c (.025, .975), длина (x) ,. 5) + c (0,1)] почти работает, и .5 можно заменить другими значениями квантиля, чтобы получить доверительные интервалы для других квантилей, но это не будет правильно, когда существует такое, что P [X <= a ] =. 025. См., Например, Хиггинс, Непараметрическая статистика.
library(boot)
появляется для подтверждения этого:> boot.ci (boot (x, function (x, i) медиана (x [i]), R = 1000)) Интервалы: Уровень Нормальный Базовый 95% (74.42, 78.22) (75.00 , 78,49) Процентный уровень BCa 95% (73,51, 77,00) (73,00, 77,00)