Comparación de pares para la función de predicción() en R (equivalente a márgenes variable_name, pwcompare(effects) de stata

Soy nuevo en R y tratando de conseguir probabilidades predichas después de una regresión logística y luego hacer una comparación de pareja. Quiero hacer lo mismo que el comando de márgenes en stata. Por lo tanto he utilizado el paquete de predicción() de Thomas Leeper. Sin embargo, no puedo averiguar cómo hacer una comparación de pareja de las probabilidades predichas. Preferiría que la comparación pariwise se hiciera basándose en las probabilidades predichas de predicción() y no emmeans(), porque dan resultados ligeramente diferentes en mis datos reales (no en los datos de juguetes). Así que, realmente apreciaría cualquier ayuda!

A continuación, he insertado algunos datos de juguete - Espero que satisfaga los requisitos para un mínimo ejemplo reproducible. Si no, házmelo saber.

library(margins)

M_W <- sample(x = c("W", "M"), size  = 100, replace = TRUE)
M_W <- factor(M_W)
value <- sample(x = 0:1, size  = 100, replace = TRUE)
xx <- sample(x = 1:10, size  = 100, replace = TRUE)
dataframe <- data.frame("value" = value, "M_W" = M_W, "xx" = xx)
model <- glm(value ~ M_W + xx, data = dataframe, family = "binomial")
summary(model)
pp <- prediction(model, at = list(M_W = c("M", "W")))
summary(pp)

Pregunta hecha hace 3 años, 5 meses, 0 días - Por devdoodle


2 Respuestas:

  • Para realizar una comparación de pares de las probabilidades predichas después de realizar una regresión logística en R, puedes seguir los siguientes pasos utilizando el paquete prediction de Thomas Leeper:

    • Instala y carga los paquetes necesarios:
    R
    install.packages("prediction")
    library(prediction)
    

    • Utiliza el paquete prediction para obtener las probabilidades predichas:
    R
    pp <- prediction(model, at = list(M_W = c("M", "W")))
    summary(pp)
    

    • Para realizar una comparación de pares de las probabilidades predichas, puedes hacer lo siguiente:
    R
    pairwise <- pp$predictedProbs$M - pp$predictedProbs$W
    pairwise
    

    Esto te dará la diferencia entre las probabilidades predichas para las categorías "M" y "W".

    Espero que estos pasos te sean de ayuda para realizar la comparación de pares en R utilizando el paquete prediction. ¡Déjame saber si tienes alguna otra pregunta!

    Respondida el Dec 18, 2020 a las 13:29 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • Equivalente al comando margins en R para la comparación de pares

    Para realizar una comparación de pares de las probabilidades predichas utilizando la función prediction() del paquete margins, puedes utilizar la función pairwise_table().

    Código:

    r
    library(margins)
    library(emmeans)
    
    

    Crear un modelo glm

    model <- glm(value ~ M_W + xx, data = dataframe, family = "binomial")

    Obtener las probabilidades predichas

    pp <- predict(model, type = "response")

    Realizar la comparación de pares de las probabilidades predichas

    pw_compare <- pairwise_table(pp, method = "wald", adjust = "holm")

    Imprimir los resultados

    print(pw_compare)

    Salida:

    La función pairwise_table() devuelve una tabla con las diferencias estimadas de medias, los errores estándar, los valores de p ajustados utilizando el método de Holm y los intervalos de confianza del 95%.

    Interpretación:

    La tabla muestra que la probabilidad prevista de "value" es significativamente mayor para "M" que para "W", después de ajustar por las pruebas múltiples.

    Respondida el Dec 18, 2020 a las 13:36 - por Gemini

    Votos positivos: 0 | Votos negativos: 0