Revista Informática

Novedades en pandas 1.0

Publicado el 03 febrero 2020 por Daniel Rodríguez @analyticslane

El pasado día 29 de enero de 2020 se lanzó oficialmente la versión 1.0.0 de Pandas, lo que indica el grado de madurez que ha alcanzado esta librería. En esta entrada vamos a ver algunas de las novedades que trae Pandas 1.0.

Pandas es librería para la limpieza, exploración y manipulación de datos más popular en Python. Al extender las funcionalidades de los vectores de NumPy con la posibilidad de dar nombres tanto a las filas como a columnas y agregar métodos que facilitan las tareas más habituales con los conjuntos de datos. Siendo uno de los motivos por lo que Python es hoy uno de los lenguajes favoritos para los científicos de datos.

Actualización

En primer lugar, es necesario comprobar qué versión de Pandas tenemos instalado y si es necesario actualizar la última versión. Para esto simplemente debemos escribir en una sesión de Python

import pandas as pd

pd.__version__

Si la versión es anterior a la 1.0.0 actualizaremos escribiendo en la terminal.

pip install --upgrade pandas

Con lo que la librería se actualizará a la última versión de Pandas.

Mejoras en la exportación de DataFrame en Pandas 1.0

A la hora de crear informes ya es bastante habitual trabajar con markdow, como por ejemplo se hace en Jupyter Notebook. Por lo que en Pandas 1.0 se incluye un nuevo método ( to_markdown()) en los objetos DataFrame que permite exportar estos a tablas markdow. Facilitando así mover estas a documentos redactados en este formato. Algo que se puede ver en el siguiente ejemplo.

df = pd.DataFrame({
    'C1': [1, 2, 3, 4],
    'C2': ['A', 'B', 'C', 'D'],
    'C3': [True, False, True, False]
})

df.to_markdown()
|    |   C1 | C2   | C3    |
|---:|-----:|:-----|:------|
|  0 |    1 | A    | True  |
|  1 |    2 | B    | False |
|  2 |    3 | C    | True  |
|  3 |    4 | D    | False |

Valores nulos con pd.NA

Con anterioridad a Pandas 1.0 se podía indicar un valor nulo con np.nan, None o pd.NaT. Ahora es posible utilizar además el valor pd.NA, siendo este ultimo un más consistente que los anteriores ya que los resultados son independientemente del tipo de dato y operación. A diferencia los anteriores cualquier operación que involucre a un valor pd.NA dará como resultado un pd.NA. Por ejemplo, algo que se puede apreciar al utilizar operadores lógicos.

np.nan == np.nan # False
pd.NaT == pd.NaT # False
None == None     # True
pd.NA == pd.NA   # <NA>

Conclusiones

En esta entrada hemos visto algunas de las novedades que trae la versión 1.0 de Pandas. Una versión importante ya que supone el primer cambio en el número de versión mayor.

Imagen de Michael Gaida en Pixabay

Publicidad

Publicidad


Volver a la Portada de Logo Paperblog