Подгонка лог-ссылки с нормальным распределением в GEE - PullRequest
0 голосов
/ 05 марта 2020

У меня есть данные, аналогичные приведенным ниже, и я хотел бы установить заменяемую матрицу корреляции с нормальным распределением отклонений с помощью лог-ссылки.

x <- data.frame(id=rep(1:20, each=3), events=sample(0:12,60, replace = T), 
                sport=sample(0:1,30, replace = T), sex=rep(c("M","F"), each=30))

library(gee)
gee(events ~ sport + sex, id=id, data = x,
                      corstr = "exchangeable", family = gaussian(link="log"))

При попытке установить это с помощью функций gee или geeglm в R я получаю следующую ошибку:

Error in eval(family$initialize) : cannot find valid starting values: please specify some

Это наиболее вероятно, потому что у меня есть 0 с в моем исходе; и я прочитал, я должен указать что-то с start или offset. Как я могу это исправить?

1 Ответ

1 голос
/ 05 марта 2020

Вам необходимо указать вектор начальных значений соответствующей длины. Первоначальное предположение может быть найдено при запуске аналогичной модели, но с использованием ссылки «идентичность» по умолчанию для гауссовского распределения.

library(gee)
gee0 <- gee(events ~ sport + sex, id=id, data = x,
                      corstr = "exchangeable", family = gaussian))
___
(Intercept)       sport        sexM 
   5.797436   -1.230769    1.866667

Так что попробуйте это для начала. Согласно документации , начальные значения могут быть указаны с помощью аргумента b.

gee1 <- gee(events ~ sport + sex ,id=id, data = x, b=coef(gee0),
            corstr = "exchangeable", family = gaussian("log"))
summary(gee1)

Coefficients:
              Estimate Naive S.E.   Naive z Robust S.E.  Robust z
(Intercept)  1.7360218  0.1481879 11.715004   0.1503372 11.547521
sport       -0.2060653  0.1575038 -1.308320   0.1546603 -1.332374
sexM         0.3191439  0.1589250  2.008141   0.1530178  2.085665
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...