3 votos

Gráficos de correlación con valores faltantes

Tengo 9 vectores de datos numéricos. Quiero hacer gráficos de correlación para estos 9 vectores. Sin embargo, algunos vectores tienen una longitud diferente a otros: algunos tienen hasta 240 observaciones mientras que otros solo tienen 159 observaciones. R solo puede hacer gráficos de correlación para vectores de la misma longitud. Para que los vectores tengan la misma longitud, simplemente necesito usar:

length(x) = length(y)

El problema es que esto elimina hasta 81 observaciones de algunos vectores. ¿Hay alguna manera de evitar esto, aparte de simplemente eliminar observaciones? Si necesito eliminar observaciones, ¿cómo determino qué observaciones eliminar?

5voto

ocram Puntos 9992

Digamos que tienes dos variables aleatorias, $X$ e $Y$.

Estás interesado en la relación (lineal) entre $X$ e $Y$.

Para investigar esto, tomaste una muestra de $n$ individuos independientes y mediste tanto $X$ como $Y$ en cada individuo.

Esto resulta en tu muestra de observaciones, $(x_1, y_1), \ldots, (x_n, y_n)$, a partir de la cual puedes calcular la correlación empírica que proporciona una estimación de la verdadera correlación de interés.

Pero, por supuesto, tanto $x_i$ como $y_i$ deben tomarse en el individuo $i$. Por lo tanto, debes tener vectores de observaciones de igual tamaño. De lo contrario, hiciste algo mal en tu experimento y no puedes investigar la correlación con tus datos.

Ahora, pueden ocurrir valores faltantes. Por ejemplo, puede ser que hayas logrado medir $X$ en el individuo $i$, pero no $Y$. En ese caso, podría ser razonable ignorar al individuo $i.

5voto

DavLink Puntos 101

Es posible mostrar casos completos y valores faltantes juntos: simplemente asigna un par de valores artificiales a las observaciones que tienen un valor faltante, de manera que aparezcan, por ejemplo, en la parte inferior izquierda de tu visualización sin superponerse con observaciones completas por pares (también es posible agregar pequeñas perturbaciones a sus coordenadas, como movimientos aleatorios, para evitar superposiciones, y usar un color o forma de símbolo diferente). Una solución alternativa es graficar los valores faltantes en el margen, como se muestra a continuación (Fuente: conferencia InfoVis 03):

ingresar descripción de la imagen aquí

En cualquier caso, deberías trabajar con observaciones completas por pares, con fines de visualización, no con casos completos en todo el conjunto de datos.

Klimt también maneja de manera agradable los valores faltantes, ya que se muestran a lo largo del eje horizontal (cuando falta el valor y) y vertical (cuando falta el valor x), como se muestra en la siguiente imagen.

ingresar descripción de la imagen aquí

Aquí hay una pequeña función de R que debería manejar esto:

miss.value.plot <- function(x, y, ...) {
  plot(x, y, ...)
  rug(jitter(x[is.na(y)], amount=.1), side=1, lwd=1.2)
  rug(jitter(y[is.na(x)], amount=.1), side=2, lwd=1.2)
}

Se puede usar como panel para pairs también: Solo reemplaza plot con points. Por supuesto, puedes reemplazar rug con points si prefieres dibujar puntos u otros símbolos. En este caso, tendrás que proporcionar valores constantes para las coordenadas complementarias x o y.

También es posible confiar en software que permite el cepillado dinámico y gráficos vinculados, como GGobi. Básicamente, la idea es tener tu matriz de datos original, y una copia de la misma, compuesta solo de 0's y 1's y que codifica la ausencia de valores. Enlazar las dos tablas permite estudiar las relaciones entre cualquier par de variables mientras se observa el patrón de falta de valores en las otras variables. Algunas de estas técnicas se discuten en el capítulo sobre Datos Faltantes de Gráficos Interactivos y Dinámicos para el Análisis de Datos: Con Ejemplos Usando R y GGobi, por Cook y Swayne. Existe una Interfaz de R que permite trabajar directamente desde R. Realmente es para situaciones donde los patrones de falta de valores son de interés. Ver también MissingDataGUI: Una Interfaz Gráfica de Usuario para Explorar Valores Faltantes en Datos.

Otro software para visualizaciones interactivas de gráficos de dispersión es Mondrian. (También estaba Manet pero ya no logro hacerlo funcionar en mi Mac Intel).

-2voto

Busola Odude Puntos 21

Utilice variables ficticias si desea tener n = 240

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X