Я хочу использовать новую функцию bootMer() нового пакета lme4 (в настоящее время версия для разработчиков). Я новичок в R и не знаю, какую функцию мне написать для аргумента FUN. Он говорит, что ему нужен числовой вектор, но я понятия не имею, что эта функция будет выполнять. Итак, у меня есть формула смешанной модели, которая приводится к bootMer() и имеет несколько повторений. Так что я не знаю, что делает эта внешняя функция? Это должен быть шаблон для методов начальной загрузки? Разве методы начальной загрузки уже не реализованы в bootMer? Так зачем им внешняя "статистика интереса"? И какую интересующую статистику мне следует использовать?
Подходит ли следующий синтаксис для работы? R продолжает генерировать ошибку, генерируя, что FUN должен быть числовым вектором. Я не знаю, как отделить оценки от "подгонки", да и вообще стоит ли это делать? Я могу просто сказать, что я потерялся с этим «ВЕСЕЛЫМ» аргументом. Также я не знаю, должен ли я передать формулу glmer() смешанной модели, используя переменную «Mixed5», или я должен передать некоторые указатели и ссылки? В примерах я вижу, что X (первый аргумент bootMer() — это объект *lmer(). Я хотел написать *Mixed5, но это выдало ошибку.
Большое спасибо.
Мой код:
library(lme4)
library(boot)
(mixed5 <- glmer(DV ~ (Demo1 +Demo2 +Demo3 +Demo4 +Trt)^2
+ (1 | PatientID) + (0 + Trt | PatientID)
, family=binomial(logit), MixedModelData4))
FUN <- function(formula) {
fit <- glmer(DV ~ (Demo1 +Demo2 +Demo3 +Demo4 +Trt)^2
+ (1 | PatientID) + (0 + Trt | PatientID)
, family=binomial(logit), MixedModelData4)
return(coef(fit))
}
result <- bootMer(mixed5, FUN, nsim = 3, seed = NULL, use.u = FALSE,
type = c("parametric"),
verbose = T, .progress = "none", PBargs = list())
result
FUN
fit
И ошибка:
Error in bootMer(mixed5, FUN, nsim = 3, seed = NULL, use.u = FALSE, type = c("parametric"), :
bootMer currently only handles functions that return numeric vectors
-------------------------------------------------- ------ Обновлять ------------------------------------------- ----------
Я отредактировал код так, как сказал Бен. Код работал очень хорошо, но SE и Biases были нулевыми. Также знаете ли вы, как извлечь значения P из этого вывода (для меня это странно)? Должен ли я использовать смешанный() пакета afex?
Мой исправленный код:
library(lme4)
library(boot)
(mixed5 <- glmer(DV ~ (Demo1 +Demo2 +Demo3 +Demo4 +Trt)^2
+ (0 + Trt | PatientID)
, family=binomial(logit), MixedModelData4))
FUN <- function(fit) {
fit <- glmer(DV ~ (Demo1 +Demo2 +Demo3 +Demo4 +Trt)^2
+ (1 | PatientID) + (0 + Trt | PatientID)
, family=binomial(logit), MixedModelData4)
return(fixef(fit))
}
result <- bootMer(mixed5, FUN, nsim = 3)
result
-------------------------------------------------- ------ Обновление 2 ------------------------------------------ -----------
Я также пробовал следующее, но код выдавал предупреждения и не давал никакого результата.
(mixed5 <- glmer(DV ~ Demo1 +Demo2 +Demo3 +Demo4 +Trt
+ (1 | PatientID) + (0 + Trt | PatientID)
, family=binomial(logit), MixedModelData4))
FUN <- function(mixed5) {
return(fixef(mixed5))}
result <- bootMer(mixed5, FUN, nsim = 2)
Предупреждающее сообщение:
In bootMer(mixed5, FUN, nsim = 2) : some bootstrap runs failed (2/2)
> result
Call:
bootMer(x = mixed5, FUN = FUN, nsim = 2)
Bootstrap Statistics :
WARNING: All values of t1* are NA
WARNING: All values of t2* are NA
WARNING: All values of t3* are NA
WARNING: All values of t4* are NA
WARNING: All values of t5* are NA
WARNING: All values of t6* are NA
-------------------------------------------------- ------ Обновление 3 ------------------------------------------- -----------
Этот код также генерирует предупреждения:
FUN <- function(fit) {
return(fixef(fit))}
result <- bootMer(mixed5, FUN, nsim = 2)
Предупреждения и результаты:
Warning message:
In bootMer(mixed5, FUN, nsim = 2) : some bootstrap runs failed (2/2)
> result
Call:
bootMer(x = mixed5, FUN = FUN, nsim = 2)
Bootstrap Statistics :
WARNING: All values of t1* are NA
WARNING: All values of t2* are NA
WARNING: All values of t3* are NA
WARNING: All values of t4* are NA
WARNING: All values of t5* are NA
WARNING: All values of t6* are NA