es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Utilice el objeto mipo/data.frame de MICE con la función tab_model de sjPlot.

Estoy intentando obtener una salida de tabla para un modelo logístico agrupado con conjuntos de datos imputados de ratones para poder ver e informar las estimaciones estandarizadas y exponenciadas, así como las estadísticas de ajuste del modelo, pero parece que tab_model no acepta un objeto mipo/data.frame que provenga del análisis de datos agrupados.

Aquí hay un ejemplo con el conjunto de datos “trial” del paquete “survival”.

library(survival)
library(tidyverse)
library(mice)
library(sjPlot)

suppressWarnings(mice::mice(trial, m = 2)) %>%
        with(glm(death ~ marker + grade, family = "binomial")) %>%
        pool() %>%
        tab_model(., show.se = TRUE, show.std = TRUE, show.aic = TRUE)

Esto me da el siguiente error:

Error in if (fam.info$is_linear) transform <- NULL else transform <- “exp” :
el argumento tiene longitud cero

¿Existe alguna forma de utilizar un objeto de ratones agrupados con tab_model? ¿O convertirlo a un tipo de objeto que tab_model pueda aceptar?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que la función tab_model del paquete sjPlot no es compatible con objetos mipo/data.frame que provienen del análisis de datos agrupados directamente. Sin embargo, podemos convertir el objeto mice agrupado en un objeto glm usando la función complete() del paquete mice y luego utilizar ese objeto glm con tab_model.

    Aquí hay un código de ejemplo actualizado que convierte el objeto agrupado en un objeto glm antes de usar tab_model:

    “`{r}
    library(survival)
    library(tidyverse)
    library(mice)
    library(sjPlot)

    pooled <- suppressWarnings(mice::mice(trial, m = 2)) %>%
    with(glm(death ~ marker + grade, family = “binomial”)) %>%
    pool()

    glm_obj <- complete(pooled)

    tab_model(glm_obj, show.se = TRUE, show.std = TRUE, show.aic = TRUE)
    “`

    En este código, primero ejecutamos la función mice para imputar datos faltantes en el conjunto de datos de prueba y luego agrupamos los resultados para crear un objeto agrupado utilizando pool(). Luego, convertimos este objeto agrupado en un objeto glm completo utilizando la función complete() del paquete mice, que sustituye los valores imputados por sus valores medios. Finalmente, utilizamos este objeto glm para ejecutar tab_model.

    Este enfoque debería permitirnos ver e informar las estimaciones estandarizadas y exponentiadas y las estadísticas de ajuste del modelo de regresión logística agrupado con conjuntos de datos imputados de mice.

Comments are closed.