Я пытаюсь использовать boot.ci
из пакета R boot
для расчета смещенные и скорректированные доверительные интервалы начальной загрузки из параметрической начальной загрузки. Из моего чтения страниц руководства и экспериментов я пришел к выводу, что мне нужно вычислить складные ножи es отсчитываю время и загружаю их в boot.ci
, но это нигде явно не указано.Мне не удалось найти другую документацию, хотя, честно говоря, я не смотрел оригинальную книгу Дэвисона и Хинкли, на которой основан код ...
Если я наивно запустил b1 <- boot (..., sim = "параметрический")
, а затем boot.ci (b1)
, я получаю сообщение об ошибке значения влияния не могут быть найдены из параметрической начальной загрузки
. Эта ошибка возникает тогда и только тогда, когда я указываю type = "all"
или type = "bca"
; boot.ci (b1, type = "bca")
дает ту же ошибку. То же самое и с empinf (b1)
. Единственный способ заставить все работать - это явно вычислить оценки складного ножа (используя empinf ()
с аргументом data
) и передать их в boot.ci
.
Создание данных:
set.seed(101)
d <- data.frame(x=1:20,y=runif(20))
m1 <- lm(y~x,data=d)
Bootstrap:
b1 <- boot(d$y,
statistic=function(yb,...) {
coef(update(m1,data=transform(d,y=yb)))
},
R=1000,
ran.gen=function(d,m) {
unlist(simulate(m))
},
mle=m1,
sim="parametric")
Пока все в порядке.
boot.ci(b1)
boot.ci(b1,type="bca")
empinf(b1)
все выдают ошибку, описанную выше.
Это работает:
L <- empinf(data=d$y,type="jack",
stype="i",
statistic=function(y,f) {
coef(update(m1,data=d[f,]))
})
boot.ci(b1,type="bca",L=L)
Кто-нибудь знает, что я должен делать это именно так?
update : Исходный автор пакета boot
ответил на электронная почта:
... вы правы, проблема в том, что вы выполняете параметрическую загрузку . Интервалы bca, реализованные при загрузке, являются непараметрическими интервалами, и это должно было быть где-то явно указано . Формулы для параметрических интервалов bca не совпадают и зависят от производных наименее благоприятного семейного правдоподобия при наличии мешающих параметров, как в вашем случае .(См. Стр. 206-207 в Davison & Hinkley) empinf предполагает, что статистика находится в одной из форм, используемых для непараметрической начальной загрузки (что вы сделали в своем примере с вызовом empinf), но ваш исходный вызов для загрузки (правильно) имел статистику в другой форме , подходящей для параметрической передискретизации.
Вы, конечно, можете делать то, что делаете, но я не уверен в теоретических свойствах смешивания параметрической передискретизации с непараметрической интервальной оценкой.