Introducción
En la visualización de datos, es común encontrar datos faltantes que deben graficarse. En este tutorial, aprenderemos cómo graficar datos con valores faltantes usando Matplotlib. Exploraremos tres métodos: eliminar puntos de datos no deseados, enmascarar puntos y establecer valores en NaN.
Consejos sobre la VM
Una vez finalizada la inicialización de la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.
A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.
Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje comentarios después de la sesión y lo resolveremos rápidamente para usted.
Importar las bibliotecas necesarias
Necesitamos importar las bibliotecas que usaremos en este tutorial. Usaremos Matplotlib y NumPy.
import matplotlib.pyplot as plt
import numpy as np
Crear datos para graficar
Vamos a crear datos para graficar usando NumPy. Generaremos 31 puntos de datos entre -pi/2 y pi/2 y calcularemos el coseno de estos valores elevados a la tercera potencia.
x = np.linspace(-np.pi/2, np.pi/2, 31)
y = np.cos(x)**3
Eliminar puntos
Eliminaremos los puntos donde y > 0.7. Crearemos una nueva matriz x y una matriz y con solo los puntos restantes.
x2 = x[y <= 0.7]
y2 = y[y <= 0.7]
Enmascarar puntos
Enmascararemos los puntos donde y > 0.7 usando una matriz enmascarada. Crearemos una nueva matriz y con los valores enmascarados.
y3 = np.ma.masked_where(y > 0.7, y)
Establecer como NaN
Estableceremos como NaN donde y > 0.7. Crearemos una nueva matriz y con valores NaN.
y4 = y.copy()
y4[y3 > 0.7] = np.nan
Graficar los datos
Graficaremos los cuatro conjuntos de datos usando diferentes marcadores y colores para diferenciarlos.
plt.plot(x*0.1, y, 'o-', color='lightgrey', label='No mask')
plt.plot(x2*0.4, y2, 'o-', label='Points removed')
plt.plot(x*0.7, y3, 'o-', label='Masked values')
plt.plot(x*1.0, y4, 'o-', label='NaN values')
plt.legend()
plt.title('Masked and NaN data')
plt.show()
Interpretar la gráfica
La gráfica resultante tendrá cuatro líneas de diferentes colores y marcadores. La primera línea (gris claro) representa los datos originales sin enmascaramiento. La segunda línea (naranja) representa los datos con los puntos no deseados eliminados. La tercera línea (verde) representa los datos con los valores enmascarados. La cuarta línea (azul) representa los datos con valores NaN. Esta gráfica muestra cómo los datos faltantes pueden visualizarse usando diferentes métodos.
Resumen
En este tutorial, aprendimos cómo graficar datos con valores faltantes usando Matplotlib. Exploramos tres métodos: eliminar puntos de datos no deseados, enmascarar puntos y establecer valores como NaN. Creamos datos para graficar usando NumPy y usamos diferentes marcadores y colores para diferenciar los conjuntos de datos. También interpretamos la gráfica resultante para entender los diferentes métodos de visualización de datos faltantes.