¿Cuándo es una buena idea usar el promedio para la imputación?


9

Supongamos que tenemos una prueba de conjunto de datos :

1
8
12
14
.
.
19

El . denota valores perdidos. ¿Cuándo sería mejor usar el promedio de los valores que no faltan para imputar los valores faltantes en lugar de suponer que los datos provienen de una distribución normal?

Respuestas:


7

Don Rubin escribió un artículo influyente que demuestra que no existe un método de imputación único que produzca inferencias imparciales (donde "imputación única" significa la imputación de un solo valor para una observación faltante). Sin embargo, en el mismo documento señaló que bien podría ser posible crear múltiples imputaciones cuya media es una estimación imparcial del valor faltante, y cuyas contribuciones a una mayor varianza en el análisis posterior es una estimación razonable de la incertidumbre añadida debido a los datos. falta

Este es su artículo:

Rubin, DB (1976). Inferencia y datos faltantes. Biometrika , 63 (3): 581–592.

Y esta es una actualización: Rubin, DB (1996). Imputación múltiple después de más de 18 años. Revista de la Asociación Americana de Estadística , 91 (434): 473–489.

Y esta es una suave introducción al tema de la imputación múltiple:

Schafer, JL (1999). Imputación múltiple: una cartilla. Métodos estadísticos en la investigación médica , 8: 3–15.

Hay una variedad de paquetes de software estadístico que admiten la imputación múltiple (por ejemplo, ratones en R, o hielo en Stata, o incluso las capacidades de imputación múltiple incorporadas de Stata en versiones recientes).


2
Entiendo que el punto de Rubin es que puedes obtener una estimación puntual imparcial usando una imputación única cuidadosa, pero los errores estándar serán incorrectos. Sin embargo, en muchos casos la imputación media tendrá otros problemas, en particular distorsionar los patrones de asociación con otras variables.
Maarten Buis

@MaartenBuis Gracias, he intentado corregir eso en mi revisión ... ¿funciona?
Alexis

Realmente no. El punto de la imputación (múltiple) no es estimar los valores faltantes, se supone que se perderán para siempre. Sin embargo, a menudo sabe otras cosas sobre esos individuos / empresas / vacas, es decir, se observan otras variables para esas observaciones. Con la imputación (múltiple), desea hacer el uso más efectivo de los datos observados, que descartaría si ignorara todas las observaciones con al menos un valor faltante.
Maarten Buis

1
Sugerencia: ... no hay un método de imputación único que produzca inferencia imparcial. Esto significa que con una sola imputación los errores estándar,pLos valores y los intervalos de confianza se desactivarán en el sentido de que ignorarán la incertidumbre introducida por la imputación.
Maarten Buis

4

Nunca es una buena idea hacer esto, pero si faltan muy pocos datos, causará relativamente poco daño, será mucho más fácil de implementar y, dependiendo de su audiencia final, puede ser mucho más fácil de explicar. Sin embargo, una audiencia relativamente sofisticada puede oponerse a la imputación media única.


1
También se pueden realizar análisis de sensibilidad, por ejemplo, entre corchetes basados ​​en la imputación media con resultados que incluyen imputaciones mínimas y máximas razonables.
Alexis

1

La pregunta: "¿Qué método de imputación es la mejor opción?" Depende siempre del conjunto de datos que mire

Tomando la media, en general, es un método de imputación válido. Como alguien ya mencionó, es fácil de explicar para las publicaciones y tiene sus ventajas en la velocidad informática.

La media como método de imputación es una buena opción para series que fluctúan aleatoriamente alrededor de un cierto valor / nivel.

Para la serie que se muestra, la media no parece apropiada. Como también es solo una variable, no puede usar algoritmos multivariados clásicos proporcionados por ratones, Amelia, VIM.

Tendría que mirar especialmente los algoritmos de series temporales. Un enfoque simple pero bueno para su ejemplo sería una interpolación lineal.

library(imputeTS)   
x <- c(1,8,12,14,NA,NA,19)
na.interpolation(x)

Aquí está la salida para una interpolación lineal:

[1]  1.00000  8.00000 12.00000 14.00000 15.66667 17.33333 19.00000

Este es probablemente un mejor resultado que la media.

También hay métodos de series de tiempo más avanzados en el paquete imputeTS (por mí) o uno en el paquete de pronóstico (por Rob Hyndman)

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.