Ir al contenido principal

Python NaN: 4 formas de comprobar si hay valores perdidos en Python

Explora cuatro formas de detectar valores NaN en Python, utilizando NumPy y Pandas. Aprende las diferencias clave entre NaN y None para limpiar y analizar datos de manera eficiente.
Actualizado 8 sept 2025  · 5 min de lectura

En el mundo de la ciencia y el análisis de datos, encontrar datos faltantes es más una regla que una excepción. Los valores que faltan pueden sesgar el análisis, llevar a conclusiones incorrectas y, en general, interrumpir el flujo del procesamiento de datos. Abordar estas deficiencias es fundamental para mantener la integridad de tu análisis. El objetivo de este artículo es proporcionarte diferentes formas de identificar valores NaN (Not a Number, no es un número) en Python.

La respuesta corta: Utiliza NumPy's isnan() función o Pandas .isna() método

Cuando se trata de valores perdidos en Python, el enfoque depende en gran medida de la estructura de datos con la que estés trabajando.

Para valores únicos o arreglos: Utiliza NumPy.

La función isnan() de NumPy es ideal para identificar valores NaN en arreglos numéricos o valores únicos, ya que ofrece una solución sencilla y eficaz. ¡Aquí lo tienes en acción!

import numpy as np

# Single value check
my_missing_value = np.nan
print(np.isnan(my_missing_value))

# Output: True

# Array check
my_missing_array = np.array([1, np.nan, 3])
nan_array = np.isnan(my_missing_array)
print(nan_array)

# Output: [False  True False]

Para DataFrames: Usa pandas

Pandas proporciona métodos completos como .isna() y .isnull() para detectar valores perdidos en objetos DataFrame o Series, integrándose a la perfección con los flujos de trabajo de análisis de datos.

import pandas as pd
import numpy as np

my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})

print(my_dataframe.isna())

#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

Cuando ejecutes este código, el resultado indicará la presencia de valores NaN en un contexto más interesante, como se muestra arriba.

La diferencia entre NaN y None

Comprender la diferencia entre NaN y None es fundamental en Python. NaN es una representación en coma flotante de «Not a Number» (No es un número), que se utiliza principalmente en cálculos numéricos. Por otro lado, None es un objeto de Python que representa la ausencia de un valor, similar al null de otros lenguajes. Mientras que NaN se utiliza en cálculos matemáticos o científicos, «None» tiene un uso más general y indica la falta de datos.

4 formas de comprobar si hay NaN en Python

Navegar por los conjuntos de datos para identificar valores perdidos es un paso fundamental en el preprocesamiento de datos. Exploremos cuatro métodos prácticos para comprobar los valores e NaN es en Python, continuando con los interesantes ejemplos que ya hemos utilizado.

1. Comprobación de NaN utilizando np.isnan()

Como hemos visto anteriormente, NumPy ofrece un método sencillo para identificar valores e NaN es tanto en valores individuales como en arreglos, lo cual es esencial para el análisis de datos numéricos.

import numpy as np

# Checking a single value
print(np.isnan(np.nan))

# Output: True

# Checking an array
my_array = np.array([1, 5, np.nan])
print(np.isnan(my_array))

# Output: [False False  True]

2. Comprobando si NaN utilizando pd.isna()

Pandas simplifica la detección de valores NaN en estructuras de datos, desde escalares hasta DataFrame complejos, lo que lo hace invaluable para tareas de manipulación de datos.

import numpy as np
import pandas as pd

# Checking a single value
print(pd.isna(np.nan))

# Output: True

# Checking a pandas Series
my_series = pd.Series(["Python", np.nan, "The Best"])
print(my_series.isna())

# Output:
# 0    False
# 1     True
# 2    False

# Checking a pandas DataFrame
my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})

print(pd.isna(my_dataframe)) # Output a DataFrame with True for missing values

3. Comprobando si NaN en DataFrame utilizando Pandas .isna() o .isnull() métodos

Los DataFrame de Pandas también ofrecen los métodos .isna() y .isnull() para localizar fácilmente los valores que faltan en los conjuntos de datos, lo que proporciona una visión general clara de la integridad de los datos.

import numpy as np
import pandas as pd

# Create a dataframe with missing values
my_dataframe = pd.DataFrame({
    'Column1': ["I", "Love", np.nan], 
    'Column2': ["Python", np.nan, "The Best"]
})

print(my_dataframe.isna())
# Output:
#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

print(my_dataframe.isnull())
# Output:
#    Column1  Column2
# 0    False    False
# 1    False     True
# 2     True    False

4. Comprobando si NaN en DataFrames utilizando math.isnan()

Para comprobaciones numéricas individuales, la función math.isnan() ofrece una solución sencilla pero eficaz, especialmente cuando se trata de tipos de datos Python puros.

import math

# Assuming my_number is a float or can be converted to one
my_number = float('nan')
print(math.isnan(my_number))

# Output: True

Reflexiones finales y recursos adicionales

Identificar y gestionar los valores NaN es un paso fundamental en la limpieza y preparación de los datos para su análisis. Tanto si trabajas con arreglos, series o marcos de datos, es fundamental comprender las herramientas y métodos disponibles en Python para tratar los datos faltantes. Para obtener más información, consulta los siguientes recursos:


Adel Nehme's photo
Author
Adel Nehme
LinkedIn

Adel es educador de Ciencia de Datos, conferenciante y Evangelista en DataCamp, donde ha publicado varios cursos y formación en directo sobre análisis de datos, aprendizaje automático e ingeniería de datos. Le apasiona difundir las habilidades y la alfabetización en materia de datos en las organizaciones y en la intersección entre tecnología y sociedad. Tiene un máster en Ciencia de Datos y Análisis Empresarial. En su tiempo libre, puedes encontrarle pasando el rato con su gato Louis.

Temas

¡Comienza hoy mismo tu aventura con Python!

Programa

Fundamentos de Datos en Python

0 min
Desarrolla tus habilidades con los datos, descubre cómo manipularlos y visualizarlos, y aplica análisis avanzados para tomar decisiones basadas en datos.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow
Relacionado

blog

Las 20 preguntas más frecuentes en una entrevista sobre NumPy: De Básico a Avanzado

Prepárate para tu próxima entrevista de ciencia de datos con preguntas esenciales sobre NumPy, desde las más básicas hasta las más avanzadas. ¡Perfecto para afinar tus habilidades y aumentar la confianza!
Tim Lu's photo

Tim Lu

9 min

Tutorial

Las mejores técnicas para gestionar valores perdidos que todo científico de datos debe conocer

Explore varias técnicas para manejar eficazmente los valores perdidos y sus implementaciones en Python.
Zoumana Keita 's photo

Zoumana Keita

Tutorial

Guía completa de listas vacías en Python

Aprenda las principales operaciones con listas y los casos de uso de las listas vacías en Python.
Adel Nehme's photo

Adel Nehme

Tutorial

Arreglos en Python

Arreglos de Python con ejemplos de código. ¡Aprende hoy mismo a crear e imprimir arreglos con Python NumPy!
DataCamp Team's photo

DataCamp Team

data-frames-in-python-banner_cgzjxy.jpeg

Tutorial

Tutorial de Pandas: DataFrames en Python

Explora el análisis de datos con Python. Los DataFrames de Pandas facilitan la manipulación de tus datos, desde la selección o sustitución de columnas e índices hasta la remodelación de tus datos.
Karlijn Willems's photo

Karlijn Willems

Tutorial

Tutorial seleccionar columnas con Python

Utiliza Python Pandas y selecciona columnas de los DataFrames. ¡Sigue nuestro tutorial con ejemplos de código y aprende hoy mismo distintas formas de seleccionar tus datos!
DataCamp Team's photo

DataCamp Team

Ver másVer más