Я пытаюсь создать доверительные интервалы для предельных прогнозов с помощью функции predictInterval
, которая является далее описано здесь.
Здесь я использую goats
данные из пакета ResourceSelection, который содержит используемые и доступные местоположения (с кодами 1 и 0 соответственно) и значения интересующих ковариат (например, высота, уклон и т. Д.) Для построения воспроизводимой модели.
Пакеты
library(lme4)
library(ResourceSelection)
library(merTools)
Df содержит использованные и доступные локации для 10 животных.
table(goats$ID, goats$STATUS)
0 1
1 1404 702
2 1112 556
3 1026 513
4 634 317
5 1272 636
6 1456 728
7 1394 697
8 1468 734
9 1608 804
10 1302 651
Ниже приведен пример модели со случайным перехватом, указанным для индивидуума (ID). ковариаты центрируются и масштабируются в рамках подгонки модели с помощью scale()
.
mod <- glmer(STATUS ~ scale(ELEVATION) + scale(SLOPE) + scale(ET) + scale(HLI) + (1|ID),
family=binomial, data = goats, verbos = 1)
summary(mod)
Теперь я хочу спрогнозировать диапазон ПОДЪЕМА со всеми другими ковариатами на их среднем уровне. Поскольку я работаю с масштабированными и центрированными ковариатами, среднее значение равно 0. Минимальное и максимальное значения масштаба (ELEVATION) равны -1,97056 и 2,52926, которые я использую для создания новых данных прогнозирования, представленных ниже.
PredDat <- data.frame(ELEVATION = seq(-1.97056, 2.52926, length.out = 1000),
SLOPE = 0,
ET = 0,
HLI = 0)
Хотя я могу генерировать прогнозы вручную, я не уверен, как оценить 95-процентный доверительный интервал, когда для больших наборов данных используются методы начальной загрузки (рекомендуется здесь) недопустимо. Можно ли с помощью функции predictInterval
генерировать предельные прогнозы и CI без учета отдельного случайного эффекта? Приведенный ниже код приводит к ошибке Error in eval(expr, envir, enclos) : object 'ID' not found
, поскольку в кадре данных PredDat нет идентификатора. Если я добавлю идентификатор во фрейм данных PredDat, код будет работать нормально.
Preds <- predictInterval(mod, newdata = PredDat, type = "probability")
Мы будем очень благодарны за любые предложения о том, как генерировать предельные прогнозы на основе объекта glmer.
Основная информация о сеансе вставлена под FYI.
> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: i386-w64-mingw32/i386 (32-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
other attached packages:
[1] merTools_0.2.0 plyr_1.8.3
[3] arm_1.8-6 MASS_7.3-45
[5] ResourceSelection_0.2-5 lme4_1.1-10
[7] Matrix_1.2-3 sp_1.2-1