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.

coxphfit

Regresión de riesgos proporcionales de Cox

Descripción

ejemplo

b = coxphfit(X,T) Devuelve un vector-by-1, de estimaciones de coeficiente para una de las respuestas observadas en los predictores, donde es un vector-por-1 o una matriz de-por-2, y es un-por-matriz.pbRegresión de riesgos proporcionales de CoxTXTnnXnp

El modelo no incluye un término constante y no puede contener una columna de 1s.X

ejemplo

b = coxphfit(X,T,Name,Value) Devuelve un vector de estimaciones de coeficiente, con opciones adicionales especificadas por uno o más argumentos de par.Name,Value

ejemplo

[b,logl,H,stats] = coxphfit(___) también devuelve la logverosimilitud, una estructura, que contiene estadísticas adicionales y una matriz de dos columnas, que contiene los valores de la primera columna y el riesgo acumulado de la línea base estimada en la segunda columna.loglstatsHT Puede utilizar cualquiera de los argumentos de entrada de las sintaxis anteriores.

Ejemplos

contraer todo

Cargue los datos de ejemplo.

load(fullfile(matlabroot,'examples','stats','lightbulb.mat'));

La primera columna de los datos de la bombilla tiene la duración (en horas) de dos tipos diferentes de bombillas. La segunda columna tiene la variable binaria que indica si la bombilla es fluorescente o incandescente. 0 indica que la bombilla es incandescente, y 1 indica que es fluorescente. La tercera columna contiene la información de censura, donde 0 indica que la bombilla se observó hasta el fallo, y 1 indica que la bombilla fue censurada.

Ajuste un modelo de peligros proporcionales de Cox para la vida útil de las bombillas, también teniendo en cuenta la censura. La variable predictora es el tipo de bombilla.

b = coxphfit(lightbulb(:,2),lightbulb(:,1), ... 'Censoring',lightbulb(:,3))
b = 4.7262 

La estimación de la relación de riesgo es

<math display="block">
<mrow>
<msup>
<mrow>
<mi>e</mi>
</mrow>
<mrow>
<mi>b</mi>
</mrow>
</msup>
</mrow>
</math>
= 112,8646. Esto significa que el peligro para las bombillas incandescentes es 112,86 veces el peligro para las bombillas fluorescentes.

Cargue los datos de ejemplo.

load(fullfile(matlabroot,'examples','stats','lightbulb.mat'));

La primera columna de los datos tiene la duración (en horas) de dos tipos de bombillas. La segunda columna tiene la variable binaria que indica si la bombilla es fluorescente o incandescente. 1 indica que la bombilla es fluorescente y 0 indica que es incandescente. La tercera columna contiene la información de censura, donde 0 indica que la bombilla se observa hasta el fallo, y 1 indica que el elemento (bombilla) está censurado.

Ajuste un modelo de peligros proporcionales de Cox, también que representa la censura. La variable predictora es el tipo de bombilla.

b = coxphfit(lightbulb(:,2),lightbulb(:,1),... 'Censoring',lightbulb(:,3))
b = 4.7262 

Visualice los parámetros de control predeterminados para el algoritmo que se utiliza para estimar los coeficientes.coxphfit

statset('coxphfit')
ans = struct with fields:
          Display: 'off'
      MaxFunEvals: 200
          MaxIter: 100
           TolBnd: 1.0000e-06
           TolFun: 1.0000e-08
       TolTypeFun: []
             TolX: 1.0000e-08
         TolTypeX: []
          GradObj: []
         Jacobian: []
        DerivStep: []
      FunValCheck: []
           Robust: []
     RobustWgtFun: []
           WgtFun: []
             Tune: []
      UseParallel: []
    UseSubstreams: []
          Streams: {}
        OutputFcn: []

Guarde las opciones con un nombre diferente y cambie la forma en que se mostrarán los resultados y el número máximo de iteraciones, y.DisplayMaxIter

coxphopt = statset('coxphfit'); coxphopt.Display = 'final'; coxphopt.MaxIter = 50;

Ejecute con los nuevos parámetros del algoritmo.coxphfit

b = coxphfit(lightbulb(:,2),lightbulb(:,1),... 'Censoring',lightbulb(:,3),'Options',coxphopt)
Successful convergence: Norm of gradient less than OPTIONS.TolFun 
b = 4.7262 

muestra un informe sobre la iteración final.coxphfit El cambio del número máximo de iteraciones no afectó a la estimación del coeficiente.

Genere datos de Weibull dependiendo del predictor.X

rng('default') % for reproducibility X = 4*rand(100,1); A = 50*exp(-0.5*X);  B = 2; y = wblrnd(A,B);

Los valores de respuesta se generan a partir de una distribución de Weibull con un parámetro de forma dependiendo de la variable predictora y un parámetro de escala de 2.X

Ajuste un modelo de peligros proporcionales de Cox.

[b,logL,H,stats] = coxphfit(X,y); [b logL]
ans = 1×2

    0.9409 -331.1479

La estimación del coeficiente es 0,9409 y el valor log verosimilitud es – 331,1479.

Solicite las estadísticas del modelo.

stats
stats = struct with fields:
       covb: 0.0158
       beta: 0.9409
         se: 0.1256
          z: 7.4889
          p: 6.9462e-14
      csres: [100x1 double]
     devres: [100x1 double]
    martres: [100x1 double]
     schres: [100x1 double]
    sschres: [100x1 double]
     scores: [100x1 double]
    sscores: [100x1 double]

La matriz de covarianza de las estimaciones de coeficiente, contiene sólo un valor, que es igual a la varianza de la estimación del coeficiente en este ejemplo.covb La estimación del coeficiente,, es la misma que y es igual a 0,9409.betab El error estándar de la estimación del coeficiente, es 0,1256, que es la raíz cuadrada de la varianza 0,0158.se el

<math display="block">
<mrow>
<mi>z</mi>
</mrow>
</math>
-statistic, es = 0.9409/0.1256 = 7,4880.zbeta/se El valor p, indica que el efecto de es significativo.pX

Trace la estimación de Cox de la función de superviviente de línea de base junto con la función conocida de Weibull.

stairs(H(:,1),exp(-H(:,2)),'LineWidth',2) xx = linspace(0,100); line(xx,1-wblcdf(xx,50*exp(-0.5*mean(X)),B),'color','r','LineWidth',2) xlim([0,50]) legend('Estimated Survivor Function','Weibull Survivor Function')

El modelo ajustado da una estimación aproximada de la función superviviente de la distribución real.

Argumentos de entrada

contraer todo

Observaciones sobre variables predictoras, especificadas como una-por-matriz de predictores para cada una de las observaciones.nppn

El modelo no incluye un término constante, por lo que no puede contener una columna de 1s.X

Si, o el valor de o contienen valores, a continuación, quita las filas con valores de todos los datos al ajustar un modelo de Cox.XT'Frequency''Strata'NaNcoxphfitNaN

Tipos de datos: double

Datos de tiempo de evento, especificados como un vector-by-1 o una matriz de dos columnas.n

  • Cuando T es un vector de-por-1, representa el tiempo de evento de los datos de tiempo a evento censurados a la derecha.n

  • Cuando T es una matriz de-por-2, cada fila representa el intervalo de riesgo (Start, STOP) en el formato de proceso de conteo para covariables dependientes del tiempo.n La primera columna es la hora de inicio y la segunda columna es la hora de detención. Para ver un ejemplo, vea.Modelo de peligros proporcionales de Cox con covariables dependientes del tiempo

Si, o el valor de o contienen valores, a continuación, quita las filas con valores de todos los datos al ajustar un modelo de Cox.XT'Frequency''Strata'NaNcoxphfitNaN

Tipos de datos: single | double

Argumentos de par nombre-valor

Especifique pares de argumentos separados por comas opcionales. es el nombre del argumento y es el valor correspondiente. deben aparecer dentro de las cotizaciones.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como.Name1,Value1,...,NameN,ValueN

Ejemplo: Especifica que calcula la tasa de peligro de línea base en relación con 0, teniendo en cuenta la información de censura en el vector y la frecuencia de las observaciones y dadas en el vector.'Baseline',0,'Censoring',censoreddata,'Frequency',freqcoxphfitcensoreddataTXfreq

Valores iniciales de coeficiente, especificados como el valor separado por comas que consta de un vector numérico.'B0'

Tipos de datos: double

valores en los que calcular el riesgo de línea base, especificado como el par separado por comas que consta de y un valor escalar.X'Baseline'

El valor predeterminado es, por lo que la tasa de riesgo es.mean(X)Xh(t)*exp((X-mean(X))*b) Escriba para calcular la línea base en relación con 0, por lo que la tasa de peligro a es.0Xh(t)*exp(X*b) Cambiar la línea de base no afecta a las estimaciones de coeficiente, pero la relación de riesgo cambia.

Ejemplo: 'Baseline',0

Tipos de datos: double

Indicador de censura, especificado como el par separado por comas que consta de y una matriz booleana del mismo tamaño que.'Censoring'T Utilice 1 para las observaciones que están censuradas a la derecha y 0 para las observaciones que se observan completamente. El valor predeterminado es que todas las observaciones se observan completamente. Para ver un ejemplo, vea.Modelo de peligros proporcionales de Cox para datos censurados

Ejemplo: 'Censoring',cens

Tipos de datos: logical

Frecuencia o ponderaciones de observaciones, especificadas como el par separado por comas que consta de una matriz que tiene el mismo tamaño que contiene valores escalares no negativos.'Frequency'T La matriz puede contener valores enteros correspondientes a frecuencias de observaciones o valores no negativos correspondientes a pesos de observación.

Si, o el valor de o contienen valores, a continuación, quita las filas con valores de todos los datos al ajustar un modelo de Cox.XT'Frequency''Strata'NaNcoxphfitNaN

El valor predeterminado es 1 por fila de y.XT

Ejemplo: 'Frequency',w

Tipos de datos: double

Variables de estratificación, especificadas como el par separado por comas que consta de una matriz de valores reales. La matriz debe tener el mismo número de filas que, con cada fila correspondiente a una observación.T

Si, o el valor de o contienen valores, a continuación, quita las filas con valores de todos los datos al ajustar un modelo de Cox.XT'Frequency''Strata'NaNcoxphfitNaN

El valor predeterminado, no es ninguna variable de estratificación.[]

Ejemplo: 'Strata',Gender

Tipos de datos: single | double

Método para controlar los tiempos de falla vinculados, especificado como el par separado por comas que consta de y cualquiera (método de Breslow) o (método de Efron).'Ties''breslow''efron'

Ejemplo: 'Ties','efron'

Parámetros de control de algoritmo para el algoritmo iterativo utilizado para estimar, especificado como el par separado por comas que consta de y una estructura.b'Options' Una llamada para crear este argumento.statset Para los nombres de parámetro y los valores predeterminados, escriba.statset('coxphfit') Puede establecer las opciones con un nuevo nombre y usarla en el argumento de par nombre-valor.

Ejemplo: 'Options',statset('coxphfit')

Argumentos de salida

contraer todo

Estimaciones de coeficiente para a, devueltas como vector a-por-1.Regresión de riesgos proporcionales de Coxp

Logverosimilitud del modelo ajustado, devuelto como un escalar.

Puede utilizar valores de log verosimilitud para comparar diferentes modelos y evaluar la importancia de los efectos de los términos en el modelo.

Tasa de riesgo acumulada de línea base estimada evaluada en valores, devuelta como una de las siguientes.T

  • Si el modelo no está estratificado, entonces es una matriz de dos columnas.H La primera columna de la matriz contiene valores, y la segunda columna contiene estimaciones de tasa de riesgo acumulativas.T

  • Si el modelo está estratificado, entonces es una matriz de columna (2 +), donde las últimas columnas corresponden a las variables de estratificación utilizando el argumento de par nombre-valor.HkkStrata

Estadísticas de coeficiente, devueltas como una estructura que contiene los siguientes campos.

betaEstimaciones de coeficiente (igual que)b
seErrores estándar de estimaciones de coeficiente,b
z-estadísticas para (es decir, dividido por error estándar)zbb
p-valores parapb
covb

Matriz de covarianza estimada parab

csres

Los residuos de Cox-Snell

devresLos residuos de desviación
martresLos residuos martingale
schresLos residuos de Schoenfeld
sschresLos residuos escalados de Schoenfeld
scoresLos residuos de puntuación
sscoresLos residuales de puntuación escalados

Devuelve los residuales Cox-Snell, martingale y desviación como un vector de columna con una fila por observación.coxphfit Devuelve el Schoenfeld, escalado Schoenfeld, puntuación, y los residuos de puntuación escalada como matrices del mismo tamaño que X. Schoenfeld y escalado de los residuos Schoenfeld de datos censurados son s.NaN

Más acerca de

contraer todo

Regresión de peligros proporcionales de Cox

La regresión de los peligros proporcionales de Cox es un método semiparamétrico para ajustar las estimaciones de la tasa de supervivencia para eliminar el efecto de las variables de confusión y cuantificar el efecto de las variables predictoras. El método representa los efectos de las variables explicativas y confusas como un multiplicador de una función de riesgo basal común,h0( ).t

Para una línea base con respecto a 0, este modelo corresponde a

h(Xi,t)=h0(t)exp[j=1pxijbj],

Dónde Xi=(xi1,xi2,,xip) es la variable predictora para el sujeto, (ihXi,) es la tasa de riesgo en el momento parattXiYh0() es la función de tasa de riesgo de línea base.t La función de riesgo de línea base es la parte no paramétrica de la función de regresión de peligros proporcionales de Cox, mientras que el impacto de las variables predictoras es una regresión loglineal. La suposición es que la función de riesgo de línea base depende del tiempo, pero las variables predictoras no dependen del tiempo.t Consulte para obtener más información, incluidas las extensiones para estratificación y variables dependientes del tiempo, eventos vinculados y ponderaciones de observación.Modelo de peligros proporcionales de Cox

Referencias

[1] Cox, D.R., and D. Oakes. Analysis of Survival Data. London: Chapman & Hall, 1984.

[2] Lawless, J. F. Statistical Models and Methods for Lifetime Data. Hoboken, NJ: Wiley-Interscience, 2002.

[3] Kleinbaum, D. G., and M. Klein. Survival Analysis. Statistics for Biology and Health. 2nd edition. Springer, 2005.

Capacidades ampliadas

Introducido antes de R2006a