Calculé un modelo lineal robusto R
con pesos MM utilizando el rlm()
paquete MASS. `R`` no proporciona un valor para el modelo, pero me gustaría tener uno si es una cantidad significativa. También estoy interesado en saber si hay algún significado en tener un valor R 2 que pese la varianza total y residual de la misma manera que las observaciones fueron ponderadas en la regresión robusta. Mi opinión general es que, si, a los efectos de la regresión, estamos esencialmente con los pesos dando menos influencia a algunas de las estimaciones porque son atípicas de alguna manera, entonces quizás con el propósito de calcular r 2 también deberíamos dar esas mismas estimaciones menos influencia?
Escribí dos funciones simples para el y el R 2 ponderado , están a continuación. También incluí los resultados de ejecutar estas funciones para mi modelo, que se llama HI9. EDITAR: Encontré la página web de Adelle Coster de UNSW que ofrece una fórmula que incluye el vector de pesos al calcular el cálculo de ambos y tal como lo hice, y le pedí una referencia más formal: http: //web.maths. unsw.edu.au/~adelle/Garvan/Assays/GoodnessOfFit.html (aún buscando ayuda de Cross Validated sobre cómo interpretar este r 2 ponderado ).R2
SSe
SSt
#I used this function to calculate a basic r-squared from the robust linear model
r2 <- function(x){
+ SSe <- sum((x$resid)^2);
+ observed <- x$resid+x$fitted;
+ SSt <- sum((observed-mean(observed))^2);
+ value <- 1-SSe/SSt;
+ return(value);
+ }
r2(HI9)
[1] 0.2061147
#I used this function to calculate a weighted r-squared from the robust linear model
> r2ww <- function(x){
+ SSe <- sum((x$w*x$resid)^2); #the residual sum of squares is weighted
+ observed <- x$resid+x$fitted;
+ SSt <- sum((x$w*(observed-mean(observed)))^2); #the total sum of squares is weighted
+ value <- 1-SSe/SSt;
+ return(value);
+ }
> r2ww(HI9)
[1] 0.7716264
Gracias a cualquiera que pase el tiempo respondiendo esto. Acepte mis disculpas si ya hay alguna referencia muy buena sobre esto que me perdí, o si mi código anterior es difícil de leer (no soy un tipo de código).
Respuestas:
La siguiente respuesta se basa en: (1) mi interpretación de Willett y Singer (1988) Otra nota de precaución sobre R-cuadrado: se utiliza en análisis de regresión de mínimos cuadrados ponderados. El estadístico estadounidense. 42 (3). pp236-238, y (2) la premisa de que la regresión lineal robusta es esencialmente una regresión de mínimos cuadrados ponderada con los pesos estimados por un proceso iterativo.
La fórmula que di en la pregunta para r2w necesita una pequeña corrección para corresponder a la ecuación 4 en Willet y Singer (1988) para r2wls: el cálculo de SSt también debe usar una media ponderada:
¿Cuál es el significado de este r-cuadrado ponderado (corregido)? Willett y Singer lo interpretan como: "el coeficiente de determinación en el conjunto de datos transformados [ponderados]. Es una medida de la proporción de la variación en Y ponderada que puede explicarse por X ponderada , y es la cantidad que se genera como R2 por los principales paquetes informáticos estadísticos cuando se realiza una regresión WLS ".
¿Tiene sentido como medida de bondad de ajuste? Esto depende de cómo se presente e interprete. Willett y Singer advierten que, por lo general, es bastante más alto que el r cuadrado obtenido en la regresión de mínimos cuadrados ordinarios, y el alto valor fomenta la visualización prominente ... pero esta visualización puede ser engañosa SI se interpreta en el sentido convencional de r cuadrado (como la proporción de no ponderadovariación explicada por un modelo). Willett y Singer proponen que una alternativa menos 'engañosa' es pseudoR2wls (su ecuación 7), que es equivalente a mi función r2 en la pregunta original. En general, Willett y Singer también advierten que no es bueno confiar en ningún r2 (incluso sus pseudor2wls) como única medida de bondad de ajuste. A pesar de estas advertencias, la premisa de una regresión robusta es que algunos casos se consideran "no tan buenos" y no cuentan tanto en el ajuste del modelo, y puede ser bueno reflejar esto en parte del proceso de evaluación del modelo. El r-cuadrado ponderado descrito puede ser una buena medida de la bondad del ajuste, siempre y cuando la interpretación correcta se dé claramente en la presentación y no se considere como la única evaluación de la bondad del ajuste.
fuente
@CraigMilligan. No debería:
sum(x$w*observed)/sum(x$w)
weighted.mean(observed,x$w)
Algo como esto:
fuente