Hola.
Hay varias opciones de aplicar ponderaciones a las observaciones en un glm.
Utilizar svyglm dentro de la librería survey. Esta función calcula correctamente los errores estándar de los coeficientes.

Sería algo como .

library(survey)

# objeto del diseño muestral

ddatos <- svydesign(id=~1, weights =~ tus.pesos, data = tus.datos)

# en caso de una reg logística

modelo <- svyglm(respuesta~ var1 + var2, family = binomial, design = ddatos)


Otra opción sería la librería rms

library(rms)
# reg logistica
modelo.lrm <- lrm(respuesta ~ var1 + var2, weights = tus.pesos)

Y alguna más que puede servir si tienes pocas variables predictoras

tabla <- with(tus.datos, xtabs(tus.pesos ~ respuesta + var1 + var2)

datos.nuevos <- data.frame(tabla)

modelo <- glm(respuesta ~ var1 + var2, family=binomial, weights=Freq, data=datos.nuevos)

Compara los resultados con lo que te sale al usar glm con la opción weights. Para mí, la mejor opción es usar la librería survey, ya que permite utilizar no sólo ponderaciones sino también diseños muestrales complejos.

Espero que te sirva.

El 14/11/14 a las 10:46, Isa García Barón escribió:
Hola, espero ser clara en el mensaje ya que es la primera vez que recurro a
este tipo de ayudas, explico mi duda:

Tengo un dataset con 4505 observaciones en el que la variable dependiente
son presencias (n=97 y clasificadas como 1) y ausencias (n=4408 y
clasificadas como 0). Mi primer paso fue realizar un GLM con una muestra
compensada de ausencias y presencias para la variable dependiente, es decir
97 presencias y 97 ausencias. Sin embargo, como todo lo que tengo son
ausencias y no pseudoausencias me recomendaron utilizar las 97 presencias
frente a todas las ausencias, aquí viene el problema. Si realizo un GLM con
ausencia/presencia como variable dependiente no siendo ésta proporcional
entre 1 y 0 debo ponderar las observaciones, lo cuál creo que se realiza
añadiendo el vector "weights" a la función, quedando asi:

modelo <- glm(v_dependiente ~ v1 + v2 + v3, data = datset, weights="x",
family = binomial (link=logit)

Mi duda es cómo calcular el factor de ponderación de las presencias y las
ausencias para crear el vector que pueda introducir en la función weights.

Muchas gracias! Un saludo

*-------------*
*Isabel García Barón*

        [[alternative HTML version deleted]]

_______________________________________________
R-help-es mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-help-es

_______________________________________________
R-help-es mailing list
[email protected]
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a