Мне неизвестен пакет под названием lmeresampler
, и он, похоже, был удален из cran
из-за проблем совместимости (неудачные проверки крана).
Кроме того, вопрос не включает данные, и extractor
не определен, поэтому пример не воспроизводим . Однако вывод такой же, как при использовании bootMer
function from lme4
, поэтому создайте и используйте, например, встроенную функцию.
В основном это следует примеру со страницы help(bootMer)
, но расширено для конкретной проблемы. Если объект, возвращаемый пакетом lmeresampler
, похож, он будет содержать используемые объекты.
Воспроизводимый пример
library(lme4)
data(Dyestuff, package = "lme4")
fm01ML <- lmer(Yield ~ 1|Batch, Dyestuff, REML = FALSE)
Теперь для функции bootMer
просто требуется функция, которая выводитвектор интересных параметров.
StatFun <- function(merMod){
pars <- getME(merMod, c("fixef", "theta", "sigma"))
c(beta = pars$fixef, theta = unname(pars$theta * pars$sigma), sigma = pars$sigma) ### <<== Error corrected
}
Мы можем выполнить нашу загрузку с помощью bootMer
, который также содержит параметрические параметры в type
(я предлагаю прочитать подробности на странице help(bootMer)
для получения дополнительной информации)
boo01 <- bootMer(fm01ML, StatFun, nsim = 100, seed = 101)
Теперь для более точных p-значений я бы посоветовал p-значения более близкие к 1000, но по временным причинам это может оказаться невозможным при всех обстоятельствах.
Независимо от того, что выходные данные хранятся вматрица t
, которую мы можем использовать для выполнения простого теста Колмогорова-Супремума:
H0 <- c(0, 0, 0)
Test <- sweep(abs(boo01$t), 2, H0, "-") <= H0 ###<<=== Error corrected
pVals <- colSums(Test)/nrow(Test)
print(pVals)
#output#
beta.(Intercept) theta sigma
0.00 0.12 0.00