# Obtener valores nulos con Pandas isna()

Puedes usar la función `isna()` de la [Biblioteca Python Pandas](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/python-pandas/) para **identificar los valores nulos (`NaN` o `None`) dentro de un DataFrame**. Esto puede resultar muy útil para determinar si se pueden realizar los análisis planeados o si los datos requieren una limpieza previa.

## Sintaxis de Pandas `isna()`

Pandas DataFrame `isna()` **no acepta parámetros**, por lo que su sintaxis es muy sencilla y se muestra de la siguiente manera:

```python
DataFrame.isna()
```

## Aplicación de la función `isna()` de Pandas

La función `isna()` de Pandas se aplica a un DataFrame para generar un **nuevo DataFrame con valores booleanos**. Si falta un valor en el DataFrame original o es `NaN` o `None`, se almacena el valor `True` en la posición correspondiente del resultado. En caso contrario, `isna()` devuelve el valor `False` en la posición correspondiente.

Nota Si además de identificar si hay valores `NaN` o `None` deseas eliminarlos, puedes usar la [función `dropna()` de Pandas](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/python-pandas-dataframe-dropna/). Si lo que te interesa es reemplazar esos valores de forma sistemática, puedes utilizar la [función `fillna()`](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/funcion-fillna-para-dataframes-de-pandas-en-python/).

### Identificación de valores faltantes en un DataFrame

En el siguiente ejemplo aparece un DataFrame con información sobre varias personas en el que faltan algunos datos o tienen el valor `None`:

```python
import pandas as pd
# Crear un DataFrame de ejemplo
data = {
    'Nombre': ['Alicia', 'Bob', None, 'David'],
    'Edad': [25, None, 35, 40],
    'Ciudad': ['Nueva York', 'Boston', 'Chicago', None]
}
df = pd.DataFrame(data)
print(df)
```

El DataFrame resultante tendría este aspecto:

```none
Nombre   Edad        Ciudad
0   Alicia   25.0    Nueva York
1      Bob    NaN        Boston
2     None   35.0       Chicago
3    David   40.0          None
```

Para identificar exactamente qué valores faltan, se puede utilizar `isna()` en el DataFrame:

```python
# Aplicación de Pandas isna()
missing_values = df.isna()
print(missing_values)
```

La llamada a la función genera un nuevo DataFrame, donde cada valor se reemplaza por `True` si falta el valor original o por `False` si el valor está presente. El resultado sería el siguiente:

```none
Nombre   Edad  Ciudad
0    False  False   False
1    False   True   False
2     True  False   False
3    False  False    True
```

### Contar los valores faltantes por columna

Para poder decidir cómo manejar los datos faltantes, es posible que te resulte útil saber cuántos valores faltan en cada columna. Para ellos, puedes usar `isna()` en combinación con otra función de Python, `sum()`.

```python
# Contar los valores faltantes por columna
missing_count = df.isna().sum()
print(missing_count)
```

El resultado muestra cuántos valores faltan en cada columna:

```none
Nombre     1
Edad       1
Ciudad     1
dtype: int64
```


This is a markdown version of: [https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/python-pandas-dataframe-isna/](https://www.ionos.mx/digitalguide/paginas-web/desarrollo-web/python-pandas-dataframe-isna/) for AI/LLM consumption.