Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Modelo de peligros proporcionales de Cox para datos censurados

Este ejemplo muestra cómo construir un modelo de peligros proporcionales de Cox y evaluar la importancia de las variables predictoras.

Paso 1. Cargue datos de muestra.

Cargue los datos de ejemplo.

load readmissiontimes

La variable de respuesta es, que muestra los tiempos de readmisión para 100 pacientes.ReadmissionTime Las variables predictoras son,, y el estado de tabaquismo de cada paciente,.AgeSexWeightSmoker 1 indica que el paciente es fumador, y 0 indica que el paciente no fuma. El vector de columna tiene la información de censura para cada paciente, donde 1 indica datos censurados, y 0 indica que se observan los tiempos exactos de readmisión.Censored Se trata de datos simulados.

Paso 2. Función de riesgo proporcional de Fit Cox.

Ajuste una función de riesgo proporcional de Cox con la variable Sex como la variable predictora, teniendo en cuenta la censura.

X = Sex; [b,logl,H,stats] = coxphfit(X,ReadmissionTime,'censoring',Censored);

Evaluar la significación estadística del término sexo.

stats
stats = struct with fields:
       covb: 0.1016
       beta: -1.7642
         se: 0.3188
          z: -5.5335
          p: 3.1392e-08
      csres: [100x1 double]
     devres: [100x1 double]
    martres: [100x1 double]
     schres: [100x1 double]
    sschres: [100x1 double]
     scores: [100x1 double]
    sscores: [100x1 double]

el

<math display="block">
<mrow>
<mi>p</mi>
</mrow>
</math>
-valor, indica que el término sexo es estadísticamente significativo.p

Guarde el valor de logverosimilitud con un nombre diferente. Usará esto para evaluar la importancia de los modelos extendidos.

loglSex = logl
loglSex = -262.1365 

Paso 3. Añada edad y peso al modelo.

Ajuste un modelo de peligros proporcionales de Cox con las variables sexo, edad y peso.

X = [Sex Age Weight]; [b,logl,H,stats] = coxphfit(X,ReadmissionTime,'censoring',Censored);

Evalúe la importancia de los términos.

stats.beta
ans = 3×1

   -0.5441
    0.0143
    0.0250

stats.p
ans = 3×1

    0.4953
    0.3842
    0.0960

Ninguno de los términos, ajustados para otros, es estadísticamente significativo.

Evalúe la importancia de los términos utilizando el ratio log verosimilitud. Puede evaluar la importancia del nuevo modelo utilizando la estadística de la relación de verosimilitud. En primer lugar, encuentre la diferencia entre la estadística log-verosimilitud del modelo sin los términos edad y peso y la log-verosimilitud del modelo con sexo, edad y peso.

-2*[loglSex - logl]
ans = 3.6705 

Ahora, calcule el

<math display="block">
<mrow>
<mi>p</mi>
</mrow>
</math>
-valor para la estadística de la relación de verosimilitud. La estadística de la relación de probabilidad tiene una distribución de Chi-cuadrado con un grado de libertad igual al número de variables predictoras que se evalúan. En este caso, los grados de libertad es 2.

p = 1 - cdf('chi2',3.6705,2)
p = 0.1596 

el

<math display="block">
<mrow>
<mi>p</mi>
</mrow>
</math>
-valor de 0,1596 indica que los términos edad y peso no son estadísticamente significativos, dado el término sexo en el modelo.

Paso 4. Añadir fumador al modelo.

Ajuste un modelo de peligros proporcionales de Cox con las variables sexo y fumador.

X = [Sex Smoker]; [b,logl,H,stats] = coxphfit(X,ReadmissionTime,... 'censoring',Censored);

Evalúe la importancia de los términos en el modelo.

stats.p
ans = 2×1

    0.0000
    0.0148

Compare este modelo con el primer modelo donde Sex es el único término.

 -2*[loglSex - logl]
ans = 5.5789 

Calcule el

<math display="block">
<mrow>
<mi>p</mi>
</mrow>
</math>
-valor para la estadística de la relación de verosimilitud. La estadística de la relación de probabilidad tiene una distribución de Chi-cuadrado con un grado de libertad de 1.

p = 1 - cdf('chi2',5.5789,1)
p = 0.0182 

el

<math display="block">
<mrow>
<mi>p</mi>
</mrow>
</math>
-valor de 0,0182 indica que el sexo y el fumador son estadísticamente significativos dado que el otro está en el modelo. El modelo con sexo y fumador es un mejor ajuste en comparación con el modelo con sólo sexo.

Solicitar las estimaciones de coeficiente.

 stats.beta
ans = 2×1

   -1.7165
    0.6338

La línea base predeterminada es la media de, por lo que el modelo final para la relación de riesgo esX

<math display="block">
<mrow>
<mi>H</mi>
<mi>R</mi>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mrow>
<mi>h</mi>
</mrow>
<mrow>
<mi>X</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>t</mi>
<mo stretchy="false">)</mo>
</mrow>
<mrow>
<msub>
<mrow>
<mi>h</mi>
</mrow>
<mrow>
<munderover accent="true">
<mrow>
<mi>X</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo stretchy="false"></mo>
</mrow>
</munderover>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>t</mi>
<mo stretchy="false">)</mo>
</mrow>
</mfrac>
<mo>=</mo>
<mi mathvariant="normal">exp</mi>
<mrow>
<mo>[</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mi>s</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mrow>
<mi>X</mi>
</mrow>
<mrow>
<mi>s</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>X</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo stretchy="false"></mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mi>s</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>+</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mi>α</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mrow>
<mi>X</mi>
</mrow>
<mrow>
<mi>α</mi>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<munderover accent="true">
<mrow>
<mi>X</mi>
</mrow>
<mrow></mrow>
<mrow>
<mo stretchy="false"></mo>
</mrow>
</munderover>
</mrow>
<mrow>
<mi>α</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mo>]</mo>
</mrow>
<mo>.</mo>
</mrow>
</math>

Ajuste un modelo de pH Cox con una línea base de 0.

X = [Sex Smoker]; [b,logl,H,stats] = coxphfit(X,ReadmissionTime,... 'censoring',Censored,'baseline',0);

El modelo para la relación de riesgo es

<math display="block">
<mrow>
<mi>H</mi>
<mi>R</mi>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mrow>
<mi>h</mi>
</mrow>
<mrow>
<mi>X</mi>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>t</mi>
<mo stretchy="false">)</mo>
</mrow>
<mrow>
<msub>
<mrow>
<mi>h</mi>
</mrow>
<mrow>
<mn>0</mn>
</mrow>
</msub>
<mo stretchy="false">(</mo>
<mi>t</mi>
<mo stretchy="false">)</mo>
</mrow>
</mfrac>
<mo>=</mo>
<mi mathvariant="normal">exp</mi>
<mrow>
<mo>[</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mi>s</mi>
</mrow>
</msub>
<msub>
<mrow>
<mi>X</mi>
</mrow>
<mrow>
<mi>s</mi>
</mrow>
</msub>
<mo>+</mo>
<msub>
<mrow>
<mi>β</mi>
</mrow>
<mrow>
<mi>α</mi>
</mrow>
</msub>
<msub>
<mrow>
<mi>X</mi>
</mrow>
<mrow>
<mi>α</mi>
</mrow>
</msub>
<mo>]</mo>
</mrow>
<mo>.</mo>
</mrow>
</math>

Solicitar las estimaciones de coeficiente.

 stats.beta
ans = 2×1

   -1.7165
    0.6338

Los coeficientes no se ven afectados, pero la tasa de peligro difiere de cuando la línea de base es la media de.X

Consulte también

| |

Ejemplos relacionados

Más acerca de