2017-01-10 5 views
1

Я делаю некоторую регрессию с использованием пакета geepack и хочу использовать множественное вменение для устранения недостающих значений. Команда pool() в mi не работает для моего GEE, поэтому мне нужно экспортировать (это правильно?), Чтобы я мог использовать данные в geepack. Функция complete() производит каждую итерацию, но не объединенные оценки. Есть ли способ создать кадр данных с объединенными оценками?Экспорт объединенных оценок GEE из пакета `mi`

ответ

0

Функция complete в пакете mi производит список данных m data.frames. Вы можете вызвать gee для каждого элемента этого списка для аргумента data, а затем использовать правила Rubin для получения объединенных оценок.

0

Есть несколько, если пакеты, реализующие правила Рубина в R (например, mi, mice, mitools и mitml). Проблема в том, что для этой реализации требуется, чтобы функции для подгонки статистических моделей применяли методы работы для coef() и vcov().

Функция geeglm(), однако, не определяет vcov(), а стандартные реализации не будут работать. Чтобы исправить эту ситуацию, проще всего определить отсутствующий метод для GEE. Ниже приведен пример использования пакета mitml и одного из примеров наборов данных, содержащего geepack.

library(geepack) 
library(mitml) 

# example data 
data(dietox) 

# example imputation 
fml <- Feed + Weight ~ 1 + Time + (1|Pig) 
imp <- panImpute(data=dietox, formula=fml, n.burn=5000, n.iter=500) 

implist <- mitmlComplete(imp, "all") 

# fit GEE 
fit <- with(implist, geeglm(Weight ~ 1 + Time + Feed, id=Pig)) 

# define missing vcov() function for geeglm-objects 
vcov.geeglm <- function(x) summary(x)$cov.scaled 

# combine estimates using Rubin's rules 
testEstimates(fit) 
Смежные вопросы