Graficar valores enmascarados y NaN

PythonPythonBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

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.