Постройте множественные результаты вменения

Я успешно выполнил множественное вменение недостающих данных моего исследования анкеты с использованием пакета MICE в R и выполнил линейную регрессию для объединенных вмененных переменных. Кажется, я не могу понять, как извлечь отдельные объединенные переменные и построить график. Любые идеи?

e.g.

>imp <- mice(questionnaire) 
>fit <- with(imp, lm(APE~TMAS+APB+APA+FOAP))  
>summary(pool(fit))  

Я хочу построить объединенный APE с помощью TMAS.

Воспроизводимый пример с использованием nhanes:

> library(mice)
> nhanes
> imp <-mice(nhanes)
> fit <-with(imp, lm(bmi~chl+hyp))
> fit
> summary(pool(fit))

Я хотел бы построить объединенный chl против объединенного bmi (например).

Лучшее, чего мне удалось достичь, это

> mat <-complete(imp, "long")
> plot(mat$chl~mat$bmi)

Что, как мне кажется, дает объединенный график всех 5 вменений, и это не совсем то, что я ищу (я думаю).


person Frank Zafka    schedule 27.08.2010    source источник
comment
@Kafkaesque: Вам лучше привести воспроизводимый пример. Может быть, с данными nhanes, как на странице ?mice.   -  person Richie Cotton    schedule 27.08.2010
comment
Если вы используете complete(imp), вы просто получите последнюю итерацию   -  person James    schedule 27.08.2010
comment
длинное полное (бесшумное, длинное) дает все 5 вменений. Что мне действительно нужно, так это объединенное вменение, используемое в регрессии, т.е. хочу получить график данных, используемых в регрессии. Может быть, я неправильно понял, какие данные использует регрессия, и, возможно, я хочу построить график полностью (чертенок, длинный)?   -  person Frank Zafka    schedule 27.08.2010


Ответы (1)


лежащая в основе функция with.mids () позволяет выполнять регрессию для каждого импутируемого фрейма данных. Так что произошла не одна регрессия, а 5 регрессий. pool () просто усредняет оценочные коэффициенты и корректирует дисперсию для статистического вывода в соответствии с суммой вменения.

Таким образом, для построения графика не существует единых объединенных переменных. Что вы можете сделать, так это усреднить 5 вмененных наборов и воссоздать некую «линию регрессии» на основе объединенных коэффициентов, например:

# Averaged imputed data
combchl <- tapply(mat$chl,mat$.id,mean)
combbmi <- tapply(mat$bmi,mat$.id,mean)
combhyp <- tapply(mat$hyp,mat$.id,mean)

# coefficients
coefs <- pool(fit)$qbar

# regression results
x <- data.frame(
        int = rep(1,25),
        chl = seq(min(combchl),max(combchl),length.out=25),
        hyp = seq(min(combhyp),max(combhyp),length.out=25)
      )

y <- as.matrix(x) %*%coefs


# a plot
plot(combbmi~combchl)
lines(x$chl,y,col="red")
person Joris Meys    schedule 27.08.2010
comment
Спасибо за это. Этот усредненный график кажется лучше, чем комбинированный график (из всех 5), на который я согласился. Ни один из результатов существенно не отличается от графика удаления по списку моего первоначального анализа. Еще раз спасибо за мысль и усилия. - person Frank Zafka; 27.08.2010