Мне нужна помощь для расчета основанных на начальной загрузке вероятных интервалов количества qtt.ci
из моей регрессии coef.def
.
Пока мои попытки привели кв:
Ошибка в quantile.default (с, с (0,025, 0,25, 0,5, 0,75, 0,975)): пропущенные значения и значения NaN недопустимы, если «na.rm» равен FALSE
предшествует:
Предупреждающее сообщение: В байесовой загрузке (dat, boot_fn): образец байесовой загрузки содержит либо NA, NaN или NULL.Убедитесь, что ваша статистическая функция возвращает только фактические значения.
Вот мои примеры данных:
dat <- data.frame(
A = c(1, 1, 0, 0), B = c(1, 0, 1, 0),
Pass = c(278, 100, 153, 79), Fail = c(743, 581, 1232, 1731)
Ниже приведена моя регрессия.Количество, которое я хочу получить на основе загрузочного интервала с вероятностью 95%, составляет qtt.ci
:
boot_fn <- function(dat) {
coef.def = unname(coef(glm(cbind(Pass, Fail) ~ A * B, binomial,
dat)))
}
qtt.ci <- exp(sum(coef.def[2:4])) - exp(coef.def[2]) - exp(coef.def[3]) + 1
Вот моя попытка:
bb_ci <- bayesboot(dat, boot_fn)
summary(bb_ci)
Не знаю, как получить загрузчик-основанные доверительные интервалы для qtt.ci
.
Заранее благодарны.
РЕДАКТИРОВАТЬ:
После ответа @RuiBarradas я попытался выполнить начальную загрузку, чтобы получить95% CI для количества qtt.ci (это количество, для которого я хочу получить загруженный CI), но безуспешно:
library(bayesboot)
boot_fn <- function(dat) {
coef.def <- unname(coef(glm(cbind(Pass, Fail) ~ A * B, binomial, dat)))
qtt<- (exp(sum(coef.def[2:4])) - exp(coef.def[2]) - exp(coef.def[3]) + 1)
if(all(!is.na(qtt))) qtt else NULL
}
Runs <- 1e2
qtt.ci <- bayesboot(dat, boot_fn, R = Runs, R2 = Runs)
summary(qtt.ci)
Quantiles:
statistic q2.5% q25% median q75% q97.5%
V1 2.705878 2.705878 2.705878 2.705878 2.705878
Следовательно, это не дает CI дляqtt.ci
.Вывод - это просто точечная оценка для qtt
:
qtt<-(exp(sum(coef.def[2:4])) - exp(coef.def[2]) - exp(coef.def[3]) + 1)
qtt
[1] 2.705878
Любая помощь будет принята с благодарностью.