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.

La distancia del cocinero

Propósito

La distancia de Cook es el cambio escalado en los valores ajustados, lo cual es útil para identificar valores atípicos en el valor (observaciones para las variables predictoras).X La distancia del cocinero muestra la influencia de cada observación en los valores de respuesta ajustados. Una observación con una distancia de Cook superior a tres veces la distancia media de Cook podría ser un valor atípico.

Definición

Cada elemento de la distancia del cocinero es el cambio normalizado en los valores de respuesta ajustada debido a la supresión de una observación.D La distancia de observación del cocinero esi

Di=j=1n(y^jy^j(i))2pMSE,

Dónde

  • y^j es el valor de respuesta ajustada.j

  • y^j(i) es el valor de respuesta ajustada, donde el ajuste no incluye la observación.ji

  • es el error cuadrado medio.MSE

  • es el número de coeficientes en el modelo de regresión.p

La distancia de Cook es algebraicamente equivalente a la siguiente expresión:

Di=ri2pMSE(hii(1hii)2),

Dónderi es la TH residual, yihii es el valor de apalancamiento TH.i

Cómo

Después de ajustar el modelo, por ejemplo, puede utilizar o para:mdlfitlmstepwiselm

  • Visualice los valores de distancia del cocinero indexando la propiedad utilizando la notación de puntos. es un vector de columna-por-1 en la tabla del objeto.

    mdl.Diagnostics.CooksDistance
    CooksDistancenDiagnosticsLinearModel

  • Graficar los valores de distancia del cocinero. Para obtener más información, consulte la

    plotDiagnostics(mdl,'cookd')
    plotDiagnostics función del objeto.LinearModel

Determine los valores atípicos utilizando la distancia de Cook

En este ejemplo se muestra cómo utilizar la distancia de Cook para determinar los valores atípicos de los datos.

Cargue los datos de muestra y defina las variables independientes y de respuesta.

load hospital X = double(hospital(:,2:5)); y = hospital.BloodPressure(:,1);

Ajuste el modelo de regresión lineal.

mdl = fitlm(X,y);

Graficar los valores de distancia del cocinero.

plotDiagnostics(mdl,'cookd')

La línea discontinua en la figura corresponde al valor de umbral recomendado,.3*mean(mdl.Diagnostics.CooksDistance) La gráfica tiene algunas observaciones con los valores de distancia de Cook mayores que el valor de umbral, que para este ejemplo es 3 * (0.0108) = 0,0324. En particular, hay dos valores de distancia de Cook que son relativamente más altos que los otros, que superan el valor de umbral. Es posible que desee encontrarlos y omitirlos de los datos y reconstruir el modelo.

Busque las observaciones con los valores de distancia de Cook que superen el valor de umbral.

find((mdl.Diagnostics.CooksDistance)>3*mean(mdl.Diagnostics.CooksDistance))
ans = 10×1

     2
    13
    28
    44
    58
    70
    71
    84
    93
    95

Encuentre las observaciones con los valores de distancia de Cook que son relativamente más grandes que las otras observaciones con las distancias de Cook que superan el valor de umbral.

find((mdl.Diagnostics.CooksDistance)>5*mean(mdl.Diagnostics.CooksDistance))
ans = 2×1

     2
    84

Referencias

[1] Neter, J., M. H. Kutner, C. J. Nachtsheim, and W. Wasserman. Applied Linear Statistical Models. 4th ed. Chicago: Irwin, 1996.

Consulte también

| | |

Temas relacionados