Sunteți pe pagina 1din 10

22/06/2018

CONSTRUCCION DEL MODELO DE REGRESION

La construcción de un modelo de regresión múltiple implica el desarrollo de una


estrategia que pueda identificar, entre las variables independientes disponibles, la
combinación que brinde la mejor respuesta al problema que se pretende resolver.

Objetivo / tipo de problema

1) Modelo predictivo: combinación de variables que mejor predice el evento de interés.


Se intenta encontrar un modelo con la menor cantidad posible de variables
(parsimonioso).

2) Modelo de ajuste (factor de riesgo): las variables son consideradas en función de su


relación con el FR de interés. El modelo final es, en gral., más grande.

Para esto necesitamos:

• Un proceso de selección de variables

• Los métodos para evaluar tanto las variables individuales como la performance
global en términos de validez interna y externa dentro del contexto del estudio.

a) Métodos de Selección de variables:


La selección de las variables de un modelo puede estar basada en motivos biológicos
y/o estadísticos.

El investigador debe participar en los diferentes pasos de la construcción del modelo.

Análisis univariado

Evaluar la relación de cada variable independiente con el evento.

• Si bien se pueden usar los tests ya conocidos para variables categóricas y


continuas, es recomendable también estimar inicialmente el modelo de regresión
logística simple para cada variable y obtener los coeficientes crudos.

• Para las variables continuas se debe chequear el supuesto de relación lineal con el
logit

• En esta etapa uno puede asumir linealidad ya que, a menos que haya una relación
claramente no lineal (p.ej. en U o J), cualquiera sea la relación monotónica en gral.
mostrará una tendencia significativa.

1
22/06/2018

Lineal cuadrática no lineal Binaria

Curva U o J

Selección de variables para el modelo múltiple:

Existen opiniones diferentes sobre cuál es la mejor estrategia de selección


de las variables y esto depende de distintos factores, tanto metodológicos
como de disponibilidad de información.

a) Incluir todas las variables importantes desde el punto de vista científico


más allá del resultado del análisis univariado.

• Podría ser si tenemos un n grande y el número de variables está en relación con


el de eventos (recordar la regla al menos 10 eventos por variable)

• Ojo con multicolinealidad, pérdida de precisión e inestabilidad de los coeficientes


estimados.

b) Seleccionar en base al univariable y redefinir importancia de


c/u.

• Útil cuando tenemos n pequeño o nos interesa particularmente un


modelo parsimonioso (ej. Predicción clínica)

• OJO!!! Podemos estar eliminando variables que no sabemos como


pueden jugar en el contexto multivariable

• Establecer criterios amplios de selección inicial (p.ej. p < 0.25)

2
22/06/2018

Análisis inicial:
Una vez filtradas por el análisis inicial, las variables se van
agregando una a una y se evalúa la importancia de cada una a
medida que se va construyendo el modelo multivariable

• Verificar el Wald test de cada variable y la variación del coeficiente con


respecto al estimado para esa variable en el modelo simple.

• Evaluar el efecto de confundidores sobre el FR de interés.


• Descartar variables no significativas y estimar nuevamente el modelo
con las que quedan.

• Repetir este proceso hasta lograr excluir todas las variables biológica y
estadísticamente irrelevantes.

• Si fuera necesario, se pueden reevaluar una a una las variables no


seleccionadas en el análisis univariable. Si alguna es significativa, evaluar
su inclusión en el modelo.

Evaluar el formato adecuado de las variables continuas


(linealidad vs otro formato)

a) Diseño de variables categóricas múltiples (dummies)

• Determinar categorías de la variable continua (ej. Cuartilos,


quintilos, escala cada 10, etc.)

• Generar una variable categórica que tome los distintos niveles


Incluirla en el modelo en lugar de la variable continua usando la
categoría inferior como referencia.

• Evaluar la variación de los coeficientes a medida que varía la


categoría.

• Graficar los coeficientes en cada categoría y evaluar linealidad

Ejemplo: edad en 4 categorías

. xtile ageq=age, nq(4)


. tab ageq newchd, ro

4 |
quantiles | newchd
of age | 0 1 | Total
-----------+----------------------+----------
1 | 308 51 | 359
| 85.79 14.21 | 100.00
-----------+----------------------+----------
2 | 298 61 | 359
| 83.01 16.99 | 100.00
-----------+----------------------+----------
3 | 254 64 | 318
| 79.87 20.13 | 100.00
-----------+----------------------+----------
4 | 235 92 | 327
| 71.87 28.13 | 100.00
-----------+----------------------+----------
Total | 1095 268 | 1363
| 80.34 19.66 | 100.00

3
22/06/2018

. xi:logit newchd i.ageq

i.ageq Iageq_1-4 (naturally coded; Iageq_1 omitted)


Logit estimates Number of obs = 1363
LR chi2(3) = 22.60
Prob > chi2 = 0.0000

Log likelihood = -664.32522 Pseudo R2 = 0.0167


------------------------------------------------------------------------------
newchd | Coef. Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
Iageq_2 | .2120545 .2064067 1.027 0.304 -.1924952 .6166043
Iageq_3 | .419823 .2059529 2.038 0.042 .0161627 .8234833
Iageq_4 | .8604772 .1948832 4.415 0.000 .4785131 1.242441
_cons | -1.798274 .1511774 -11.895 0.000 -2.094576 -1.501972
------------------------------------------------------------------------------

Esta estrategia sirve también para evaluar si el log odds del evento es lineal en x en
el contexto multivariable de interés.

b) Métodos gráficos

Una posibilidad es realizar un plot entre la proporción o el log odds del evento vs
categorías de la variable independiente continua y evaluar la adecuación de una recta a
la dispersión de los puntos.

Ejemplo: evaluamos la relación entre el log odds de EC y edad en Fram.dta

lintrend newchd age,groups(4) plot(log) xlab ylab


Log odds of newchd Linear prediction

-1.00
Log odds of newchd

-1.50

-2.00
45.0 50.0 55.0 60.0
Mean of age categories
Assessing Linearity Assumption -- Log Odds

• Cuando el gráfico sugiere una relación no lineal entre la


variable continua y el log odds del evento, se debe redefinir
otro formato (dicotómica o categórica múltiple)

• Categorías:

-) puntos de corte sugeridos por la relación

-) o creados como cuartilos, quintilos etc. dejando una


de las categorías como la de referencia y, observando los
coeficientes u OR, decidir el mejor formato para esa variable
en particular.

AL COMPLETAR ESTOS PASOS SE OBTIENE EL MODELO DE EFECTOS


PRINCIPALES (MAIN EFFECTS MODEL)

4
22/06/2018

• A medida que vamos agregando variables al


modelo

– Verificar cambios importantes en los coeficientes

– Verificar la mejoría de precisión predictiva (LR test)

6) Evaluar necesidad de incluir términos de interacción (ser


conservador):

• Para las variables continuas es necesario haber chequeado el


supuesto de linealidad.

• Una vez creados los términos de interacción (en base a


criterios científicos, información previa, etc.) su contribución al
modelo global se evalúa a través del Wald test, el LR test y
fundamentalmente el sentido común.

• La inclusión de términos de interacción debe estar muy bien


fundada ya que pueden complicar enormemente la
interpretabilidad del modelo.

Métodos de selección automática

a) Stepwise: (Forward / backward)

b) Best subset

Ambos métodos basados solo en criterios estadísticos, sin


control por parte del investigador.

En algunas circunstancias permite analizar modelos que no


hubiéramos explorado de otra manera.

5
22/06/2018

“La amplia disponibilidad y difusión de estos métodos de


selección automática en los paquetes estadísticos hizo que
muchos investigadores sean ahora meros asistentes de la
computadora en la selección de variables y modelos.

No hay que olvidar que el responsable de la revisión y


evaluación del modelo es siempre el investigador”

(Hosmer & Lemeshow)

Ejemplo sobre Construcción de un modelo

Paso 1: Análisis univariado:

1) Estimación del efecto de cada variable sobre el riesgo de EC en un Modelo


logístico simple (análisis univariado)

-----------------------------------------------------------------------------
newchd | Coef. Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
age | .0658098 .0144649 4.550 0.000 .0374591 .0941605
sbp | .0156232 .0023087 6.767 0.000 .0110983 .020148
chol | .0037938 .0014462 2.623 0.009 .0009593 .0066284
male | .7070219 .13937 5.073 0.000 .4338617 .9801821
cig | .0156864 .0055408 2.831 0.005 .0048265 .0265462

2) selección de las variables en el modelo múltiple

Cuál es la estrategia?

• Variables importantes (plausibilidad, información previa, hipótesis, etc)

• n adecuado

•eventos suficientes

evaluar importancia de cada variable:

• variación del coeficiente (simple – múltiple)

• Wald test

• LR test

• evaluar necesidad de términos de interacción

6
22/06/2018

a) Escalonada (manejada por el investigador)

. logit newchd male age

Log likelihood = -651.7657


------------------------------------------------------------------------------
newchd | Coef. Std. Err. z P>|z| [95% Conf.
Interval]
---------+--------------------------------------------------------------------
male | .7161349 .1405172 5.096 0.000 .4407263 .9915435
age | .0667175 .0145816 4.575 0.000 .0381381 .0952969

. logit newchd age male sbp

Log likelihood = -626.3035


newchd | Coef. Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
male | .9168691 .1482046 6.187 0.000 .6263934 1.207345
age | .0519413 .0150896 3.442 0.001 .0223663 .0815163
sbp | .0173075 .0024431 7.084 0.000 .012519 .022096

. logit newchd age male sbp chol

Log likelihood = -621.76212


newchd | Coef. Std. Err. z P>|z| [95% Conf. Interval]
---------+--------------------------------------------------------------------
male | 1.013212 .152896 6.627 0.000 .7135418 1.312883
age | .0515927 .0151994 3.394 0.001 .0218023 .081383
sbp | .016805 .0024571 6.839 0.000 .0119891 .021620
chol | .0047556 .0015732 3.023 0.003 .0016722 .007839

Qué pasa con tabaquismo?

gen smoker=.
replace smoker=0 if packs==0
replace smoker=1 if packs>0

| newchd
smoker | 0 1 | Total
-----------+----------------------+----------
0 | 614 134 | 748
| 82.09 17.91 | 100.00
-----------+----------------------+----------
1 | 481 134 | 615
| 78.21 21.79 | 100.00
-----------+----------------------+----------
Total | 1,095 268 | 1,363
| 80.34 19.66 | 100.00

Pearson chi2(1) = 3.2069 Pr = 0.073

. logit newchd age male sbp chol smoker

Logistic regression Number of obs = 1363


LR chi2(5) = 108.96
Prob > chi2 = 0.0000
Log likelihood = -621.14054 Pseudo R2 = 0.0806

------------------------------------------------------------------------------
newchd | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
age | .054305 .0154129 3.52 0.000 .0240962 .0845138
male | .9625731 .1593884 6.04 0.000 .6501775 1.274969
sbp | .0169039 .0024609 6.87 0.000 .0120805 .0217272
chol | .0047319 .0015752 3.00 0.003 .0016446 .0078191
smoker | .1694144 .1519392 1.12 0.265 -.128381 .4672098
_cons | -8.545769 .9718115 -8.79 0.000 -10.45048 -6.641054
------------------------------------------------------------------------------

. logistic newchd age male sbp chol smoker

Logistic regression Number of obs = 1363


LR chi2(5) = 108.96
Prob > chi2 = 0.0000
Log likelihood = -621.14054 Pseudo R2 = 0.0806

------------------------------------------------------------------------------
newchd | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
age | 1.055807 .0162731 3.52 0.000 1.024389 1.088188
male | 2.618425 .4173467 6.04 0.000 1.915881 3.578589
sbp | 1.017048 .0025029 6.87 0.000 1.012154 1.021965
chol | 1.004743 .0015826 3.00 0.003 1.001646 1.00785
smoker | 1.184611 .1799889 1.12 0.265 .8795183 1.595536
------------------------------------------------------------------------------

7
22/06/2018

Elección de la mejor escala de variables continuas

Que pasa con colesterol?

. xtile colcat=chol,nq(5)

. tab colcat, sum(chol)

5 quantiles | Summary of chol


of chol | Mean Std. Dev. Freq.
------------+------------------------------------
1 | 175.20205 17.210949 292
2 | 209.74908 7.5828601 271
3 | 230.32028 6.1797984 281
4 | 256.95563 8.8832656 293
5 | 304.75836 27.453848 269
------------+------------------------------------
Total | 234.70057 46.29061 1406

tab colcat newchd,ro

5 quantiles | newchd
of chol | 0 1 | Total
-----------+----------------------+----------
1 | 233 52 | 285
| 81.75 18.25 | 100.00
-----------+----------------------+----------
2 | 215 49 | 264
| 81.44 18.56 | 100.00
-----------+----------------------+----------
3 | 223 50 | 273
| 81.68 18.32 | 100.00
-----------+----------------------+----------
4 | 231 49 | 280
| 82.50 17.50 | 100.00
-----------+----------------------+----------
5 | 193 68 | 261
| 73.95 26.05 | 100.00
-----------+----------------------+----------
Total | 1095 268 | 1363
.25
.2
mean of newchd

.15
.1
.05
0

1 2 3 4 5

Formato sugerido para colesterol?

8
22/06/2018

gen hipercol=colcat==5

. tab hipercol newchd,ro

| newchd
hipercol | 0 1 | Total
-----------+----------------------+----------
0 | 902 200 | 1102
| 81.85 18.15 | 100.00
-----------+----------------------+----------
1 | 193 68 | 261
| 73.95 26.05 | 100.00
-----------+----------------------+----------
Total | 1095 268 | 1363
| 80.34 19.66 | 100.00

Modelo final (Main effects model)

logistic newchd age male sbp hipercol smoker

Logistic regression Number of obs = 1363


LR chi2(5) = 110.13
Prob > chi2 = 0.0000
Log likelihood = -620.55864 Pseudo R2 = 0.0815

------------------------------------------------------------------------------
newchd | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
age | 1.0563 .0163006 3.55 0.000 1.02483 1.088736
male | 2.549952 .4015418 5.94 0.000 1.872807 3.471931
sbp | 1.017303 .0024983 6.99 0.000 1.012418 1.022211
hipercol | 1.745355 .2996626 3.24 0.001 1.246636 2.443587
smoker | 1.188501 .1804929 1.14 0.255 .8825334 1.600546
_cons | .0005044 .0004519 -8.48 0.000 .0000872 .0029193
------------------------------------------------------------------------------

Busqueda de interacciones
Ejemplo con male y sbp

gen sbpmale=sbp*male

logistic newchd male age sbp hipercol sbpmale

Logistic regression Number of obs = 1363


LR chi2(5) = 109.00
Prob > chi2 = 0.0000
Log likelihood = -621.12241 Pseudo R2 = 0.0807

------------------------------------------------------------------------------
newchd | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
male | 3.652843 2.823601 1.68 0.094 .8029033 16.61877
age | 1.05339 .0160377 3.42 0.001 1.022421 1.085296
sbp | 1.018074 .003308 5.51 0.000 1.011611 1.024578
hipercol | 1.749649 .300386 3.26 0.001 1.249723 2.449561
sbpmale | .9980019 .0049042 -0.41 0.684 .9884359 1.00766
_cons | .000544 .0005103 -8.01 0.000 .0000865 .0034209
------------------------------------------------------------------------------

qué hacemos con el término de interacción?

9
22/06/2018

Metodos de selección automática:

Selección backwards

sw logistic newchd age male sbp hipercol smoker, pr(.2)


begin with full model
p = 0.2555 >= 0.2000 removing smoker

Logistic regression Number of obs = 1363


LR chi2(4) = 108.84
Prob > chi2 = 0.0000
Log likelihood = -621.20517 Pseudo R2 = 0.0805

------------------------------------------------------------------------------
newchd | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
age | 1.05343 .0160372 3.42 0.001 1.022462 1.085336
male | 2.683532 .4053486 6.54 0.000 1.995871 3.608121
sbp | 1.017197 .0024938 6.95 0.000 1.012321 1.022097
hipercol | 1.747911 .2999269 3.25 0.001 1.248706 2.446687
_cons | .0006247 .0005453 -8.45 0.000 .0001129 .0034568
------------------------------------------------------------------------------

Selección forward

sw logistic newchd age male sbp hipercol cig, pe(.2)


begin with empty model
p = 0.0000 < 0.2000 adding sbp
p = 0.0000 < 0.2000 adding male
p = 0.0006 < 0.2000 adding age
p = 0.0012 < 0.2000 adding hipercol
p = 0.0714 < 0.2000 adding cig
------------------------------------------------------------------------------
newchd | Odds Ratio Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
sbp | 1.017405 .0025071 7.00 0.000 1.012503 1.02233
male | 2.420683 .3912982 5.47 0.000 1.763369 3.323019
age | 1.058412 .0163849 3.67 0.000 1.02678 1.091018
hipercol | 1.735837 .2982469 3.21 0.001 1.239532 2.430861
cig | 1.01146 .0063914 1.80 0.071 .9990099 1.024064
_cons | .0004525 .0004051 -8.60 0.000 .0000783 .0026161
------------------------------------------------------------------------------
Hay que dejar cig en el modelo?

10

S-ar putea să vă placă și