El siguiente es un nomograma creado a partir del conjunto de datos mtcars con el paquete rms para la fórmula:
mpg ~ wt + am + qsec
El modelo en sí parece bueno con R2 de 0.85 y P <0.00001
> mod
Linear Regression Model
ols(formula = mpg ~ wt + am + qsec, data = mtcars)
Model Likelihood Discrimination
Ratio Test Indexes
Obs 32 LR chi2 60.64 R2 0.850
sigma 2.4588 d.f. 3 R2 adj 0.834
d.f. 28 Pr(> chi2) 0.0000 g 6.456
Residuals
Min 1Q Median 3Q Max
-3.4811 -1.5555 -0.7257 1.4110 4.6610
Coef S.E. t Pr(>|t|)
Intercept 9.6178 6.9596 1.38 0.1779
wt -3.9165 0.7112 -5.51 <0.0001
am 2.9358 1.4109 2.08 0.0467
qsec 1.2259 0.2887 4.25 0.0002
No tengo claro cuáles son estos 'Puntos', 'Puntos totales' y 'Predictor lineal'. ¿Cuál de estos representa mpg, la variable de resultado? Agradeceré cualquier explicación.
Editar: considerando excelentes sugerencias de @Glen_b para una fácil lectura de puntos, etc., lo siguiente podría ser un nomograma alternativo:
Dado que la variable de resultado o respuesta está disponible, se puede usar en lugar del término 'Predictor lineal'. También se explica por sí mismo cómo debe leerse el nomograma.
Respuestas:
Bueno, dado que su modelo es lineal, con el mpg esperado igual al predictor lineal, puede leer mpg directamente desde la escala del predictor lineal.
Para cada variable, encuentra su valor en la escala relevante. Por ejemplo, imagine que queremos encontrar un mpg previsto para un automóvil con
wt=4, am=1, qsec=18
:lo que da un mpg predicho de aproximadamente 18.94. Sustituir en la ecuación da 18.95, por lo que está bastante cerca. (En la práctica, probablemente solo trabaje hasta el punto completo más cercano, y así obtendrá una precisión de aproximadamente 2 cifras, "19 mpg", en lugar de 3-4 cifras como aquí).
En mi opinión, uno de los principales beneficios de un diagrama de este tipo es que al instante se ve el efecto relativo de los cambios en las diferentes variables predictoras (IV) sobre la respuesta (DV). Incluso cuando no necesite el diagrama para ningún cálculo, puede tener un gran valor en términos de simplemente mostrar los efectos relativos de las variables.
Pregunta de seguimiento de los comentarios:
Para los casos en que es no lineal en algunos predictores, se necesitan algunas modificaciones menores, y quizás obvias. Imagine que tenemosY = b 0 + b x 1 + f ( x 2 )mi( Y) y^= b0 0+ b x1+ f( x2)
donde cualquiera:
(a) es monótono; oF
(b) no es monótonoF
En cualquier caso, la escala para funcionaría exactamente como se indica arriba, pero en el caso:X1
(a) la escala para no será lineal; por ejemplo, si es monotónico decreciente pero (aproximadamente) cuadrático, podría tener algo como esto: fX2 F
(b) la escala no monotónica para se "romperá" en un punto de inflexión y se volteará. p.ejX2
- aquí la función tiene un mínimo alrededor dex = 2.23F( x ) x = 2.23
Es posible que tales funciones tengan varios puntos de inflexión, donde las escalas se romperían y girarían varias veces, pero la línea del eje solo tiene dos lados.
Con los nomogramas de tipo puntos, esto no presenta dificultad, ya que uno puede mover secciones de escala adicionales hacia arriba o hacia abajo (o más generalmente, ortogonalmente a la dirección del eje) un poco hasta que no se produzca solapamiento.
(Más de un punto de inflexión puede ser un problema para los nomogramas de tipo alineación; una solución que se muestra en el libro de Harrell es compensar ligeramente todas las escalas desde una línea de referencia, en la que se toma realmente la posición del valor).
En el caso de GLM con función de enlace no lineal, las escalas funcionan como anteriormente, pero la escala del predictor lineal se marcará con una escala no lineal para , algo así como (a) arriba.Y
Se pueden encontrar ejemplos de todas estas situaciones en las Estrategias de modelado de regresión de Harrell .
Solo un par de notas al margen
Preferiría ver dos escalas de puntos, en la parte superior e inferior de la sección correspondiente; de lo contrario, es difícil "alinearse" con precisión porque hay que adivinar qué es "vertical". Algo como esto:
Sin embargo, como señalo en los comentarios, para la última sección del diagrama (puntos totales y predictor lineal) quizás una mejor alternativa a una segunda escala de puntos sería simplemente tener un par de escalas consecutivas (puntos totales en una lado, predictor lineal por el otro), así:
con lo cual evitamos la necesidad de saber qué es "vertical".
Con solo dos predictores continuos y un único factor binario, podemos construir fácilmente un nomograma de alineación más tradicional :
En este caso, simplemente encuentra los valores
wt
yqsec
en sus escalas y los une con una línea; donde cruzan elmpg
eje, leemos el valor (mientras que laam
variable determina de qué lado delmpg
eje se lee). En un caso simple como este, este tipo de nomogramas son más rápidos y fáciles de usar, pero puede ser menos fácil generalizar a muchos predictores, donde pueden volverse difíciles de manejar. El nomograma de estilo de puntos en su pregunta (como se implementa en las Estrategias de modelado de regresión y en elrms
paquete en R) puede agregar más variables sin problemas. Esto puede ser una gran ventaja cuando se trata de interacciones.fuente
nomogram
funciónplot
para agregar laPoints
escala adicional de forma predeterminada. Gran sugerencia !!