Ir al contenido principal

Pandas 2.0: novedades y consejos clave

Descubre pandas 2.0, la última actualización de la librería esencial para análisis de datos, con novedades como integración con PyArrow, tipos de datos anulables y marcas de tiempo más allá del nanosegundo para mejorar rendimiento y eficiencia.
Actualizado 17 sept 2026  · 9 min leer

Explorar con IA

ChatGPTClaudePerplexity

El análisis de datos suele apoyarse mucho en la imprescindible librería pandas. Ofrece estructuras de datos y funciones de manipulación fáciles de usar que permiten trabajar con eficacia con conjuntos de datos tabulares. Con pandas, puedes importar, limpiar, transformar y agregar datos de múltiples fuentes, como archivos CSV, hojas de cálculo de Excel, bases de datos SQL y más.

Si quieres aprender a importar y limpiar datos, calcular estadísticas y crear visualizaciones con pandas, echa un vistazo a nuestro curso Data Manipulation with pandas.

En este tutorial, veremos la nueva versión de la librería pandas y repasaremos sus funciones más recientes con ejemplos de uso.

La esperada actualización a pandas 2.0 ya está aquí

Pandas 2.0 se publicó el 3 de abril de 2023 tras tres años de desarrollo. Esta versión incorpora varias novedades, como un mejor soporte de extension arrays, compatibilidad de DataFrames con PyArrow y marcas de tiempo con resolución distinta al nanosegundo. También aplica de forma estricta las deprecaciones, lo que conlleva cambios en la API.

Como actualización importante de pandas, la versión 2.0 aplica todas las deprecaciones de la serie 1.X. La última versión 1.5.3 incluía alrededor de 150 avisos. Si tu código no muestra avisos en 1.X, debería ser compatible con la 2.0.

Novedades destacadas en pandas 2.0

Veamos qué hay de nuevo en pandas 2.0 y cómo aprovechar algunas de sus mejoras.

Más rendimiento: operaciones más rápidas y eficientes en memoria

PyArrow es, probablemente, la característica clave de este lanzamiento.

Pandas se desarrolló inicialmente usando estructuras de datos de NumPy para la gestión de memoria, pero ahora puedes elegir PyArrow como formato de memoria subyacente.

PyArrow es una librería de Python (construida sobre Arrow) que ofrece una interfaz para manejar grandes volúmenes de datos usando estructuras de memoria Arrow, además de herramientas para serialización, compresión e integración con otros sistemas de procesamiento como Apache Spark y Apache Parquet.

Arrow es un formato de datos columnar en memoria, de código abierto y agnóstico al lenguaje. Está escrito en C++, pero es independiente del lenguaje.

El uso ineficiente de memoria del back-end original de NumPy es un problema común que empuja a muchos usuarios a explorar herramientas alternativas como Spark, Dask, Ray, etc. Al reducir el consumo de memoria gracias al back-end de PyArrow, pandas ahora ofrece una experiencia más fluida y permite trabajar con mayor eficiencia.

Benchmarks que comparan las operaciones de media y reemplazo usando los back-ends de NumPy y PyArrow, junto con Polars 

Gráfico de pandas

Polars es una librería de manipulación de datos en Rust para Python que ofrece una API de DataFrame similar a pandas, pero con mayor rendimiento y escalabilidad para grandes volúmenes de datos. Para saber más sobre Polars, visita la web oficial.

Este es el fragmento de código para leer un archivo CSV usando PyArrow como back-end:

pd.read_csv(my_file, dytpe_backend='pyarrow')

Si quieres aprender técnicas eficientes en pandas para optimizar tu código en Python, echa un vistazo al curso Writing Efficient Code with pandas en DataCamp.

Ya hay tipos de datos anulables

Tratar con valores ausentes en pandas solía ser complicado porque NumPy no admite valores nulos en ciertos tipos de datos. Por ejemplo, los dtypes enteros de NumPy no permiten nulos. Cuando se introducía un nulo en una columna entera, la columna se convertía automáticamente a float, lo cual no es ideal.

Pandas 1.0 introdujo dtypes anulables, pero requerían cierto esfuerzo para utilizarlos. Por suerte, en la última versión, al leer datos en un DataFrame puedes indicar que se usen dtypes anulables, lo que simplifica mucho el proceso.

pd.read_csv(my_file, use_nullable_dtypes=True)

Mejora de rendimiento con Copy-on-Write

Copy-on-Write es una técnica de optimización de memoria que utiliza pandas para mejorar el rendimiento y minimizar el uso de memoria al manejar grandes conjuntos de datos. Acerca el comportamiento de pandas a Spark y a cómo se ejecutan las operaciones perezosas en Spark. Las operaciones perezosas no se ejecutan al instante, sino que esperan a que una acción dispare el cálculo. Se denominan "perezosas" porque retrasan la ejecución hasta que es necesario obtener el resultado final.

La idea básica consiste en generar una referencia a los datos originales cuando creas una copia de un objeto de pandas, como un DataFrame o una Series, y crear una nueva copia solo cuando se realizan modificaciones.

Este enfoque permite que varias copias de los mismos datos accedan a la misma memoria hasta que haya cambios, evitando copias redundantes y reduciendo de forma notable el uso de memoria, con la consiguiente mejora del rendimiento.

Tipos numéricos de NumPy admitidos por Index

En pandas 2.0, la funcionalidad Index se ha ampliado para incluir dtypes numéricos de NumPy como int8, int16, int32, uint8, uint16, uint32, uint64, float32 y float64; antes solo se admitían int64, uint64 y float64.

Esta mejora permite crear índices con tamaños de bit inferiores, por ejemplo, índices de 32 bits, en operaciones que antes generaban índices de 64 bits.

Ahora, todos los índices numéricos se representan como Index con un dtype asociado.

Instalación de extras con pip

Al especificar extras durante la instalación de pandas con pip, puedes añadir conjuntos de dependencias opcionales. Por ejemplo:

pip install "pandas[performance, aws]>=2.0.0"

Esto instalará las dependencias opcionales performance y aws. La guía de instalación de pandas enumera todos los extras disponibles: [all, performance, computation, fss, aws, gcp, excel, parquet, feather, hdf5, spss, postgresql, mysql, sql-other, html, xml, plot, output_formatting, clipboard, compression y test]. No olvides añadir las comillas (“).

Resolución distinta al nanosegundo en Timestamps

Durante mucho tiempo, pandas tenía la limitación de representar marcas de tiempo solo con resolución de nanosegundos. Esto impedía representar fechas anteriores al 21 de septiembre de 1677 o posteriores al 11 de abril de 2264, lo que complicaba el análisis de series temporales muy extensas.

Con pandas 2.0 se añade soporte para otras resoluciones, como segundo, milisegundo y microsegundo. Esta mejora permite rangos temporales de hasta +/- 2,9e11 años, cubriendo prácticamente todos los casos de uso.

Análisis coherente de formatos de fecha y hora

Antes, la función to_datetime() en pandas infería el formato de cada elemento de forma independiente, lo que podía ser problemático cuando se esperaba un formato coherente y la función alternaba entre formatos.

Aunque ese enfoque era útil con formatos de fecha mixtos, causaba problemas a muchos usuarios.

En pandas 2.0, el proceso de parseo se ha modificado para usar un formato coherente determinado por el primer valor no NA. También puedes especificar un formato concreto y, en ese caso, será el que se utilice.

Comportamiento anterior:

ser = pd.Series(['13-01-2000', '12-01-2000'])
pd.to_datetime(ser)
Out[2]:
0   2000-01-13
1   2000-12-01
dtype: datetime64[ns]

Nuevo comportamiento:

ser = pd.Series(['13-01-2000', '12-01-2000'])

pd.to_datetime(ser)
Out[43]: 
0   2000-01-13
1   2000-01-12
dtype: datetime64[ns]

Ejemplos reproducidos de la documentación oficial.

Compatibilidad y migración

Los cambios incompatibles con versiones anteriores en una API son modificaciones que pueden romper código o integraciones existentes. Incluyen la eliminación o el cambio de nombre de funciones, clases o parámetros, o la alteración de su comportamiento esperado. Consulta la lista completa de breaking changes de pandas 2.0 en la documentación sobre cambios incompatibles con versiones anteriores.

Para actualizar la librería pandas, ejecuta este comando en tu terminal o cuaderno:

pip install -U pandas

Comunidad y soporte

Consulta las notas de la versión completas de pandas 2.0.

También puedes usar nuestra chuleta de pandas para ciencia de datos como guía rápida de lo básico de la librería de análisis de datos en Python, con ejemplos de código.

Chuleta de Python para ciencia de datos

Chuleta de DataCamp. Fuente

Pandas es un proyecto de código abierto impulsado por la comunidad, desarrollado por un amplio grupo de colaboradores y un equipo más reducido de mantenedores. El liderazgo de pandas está comprometido con una comunidad positiva, inclusiva y abierta. Si quieres participar, consulta la guía de la comunidad de colaboradores de pandas.

Conclusión

Pandas 2.0 supone una actualización importante de esta popular librería de análisis de datos, con novedades como mayor rendimiento gracias a PyArrow, tipos de datos anulables, optimización copy-on-write, compatibilidad ampliada con tipos numéricos de NumPy en los índices y resolución de fechas y horas más allá del nanosegundo.

Con esta versión, pandas es capaz de manejar conjuntos de datos más grandes con un uso de memoria más eficiente, ofreciendo una experiencia más fluida.

Para aprovechar estas funciones, basta con actualizar tu librería pandas con el comando pip install -U pandas. La comunidad de pandas sigue ofreciendo soporte y recursos, incluidos cursos en DataCamp, para ayudarte a mejorar tus habilidades de análisis de datos.

Aquí tienes algunos tutoriales excelentes que pueden ayudarte en tu camino para aprender análisis de datos.

Temas
Python
Análisis de datos

Cursos top de pandas

Curso

Manipulación de datos con pandas

4 h
564.5K
Aprende a importar y limpiar datos, calcular estadísticas y crear visualizaciones con pandas.
Ver detallesRight Arrow
Iniciar Curso
Ver másRight Arrow
Relacionado
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

15 min

Tutorial

Pandas Profiling (ydata-profiling) en Python: Guía para principiantes

Aprenda a utilizar la biblioteca ydata-profiling en Python para generar informes detallados de conjuntos de datos con muchas características.
Satyam Tripathi's photo

Satyam Tripathi

9 min

Tutorial

Tutorial de pandas en Python: La guía definitiva para principiantes

¿Estás preparado para comenzar tu viaje de pandas? Aquí tienes una guía paso a paso sobre cómo empezar.
Vidhi Chugh's photo

Vidhi Chugh

15 min

Tutorial

21 herramientas esenciales de Python

Conozca las herramientas esenciales de Python para el desarrollo de software, raspado y desarrollo web, análisis y visualización de datos y aprendizaje automático.
Abid Ali Awan's photo

Abid Ali Awan

6 min

Tutorial

pandas read_csv() Tutorial: Importar datos

Importar datos es el primer paso de cualquier proyecto de ciencia de datos. Aprende por qué los científicos de datos actuales prefieren la función pandas read_csv() para hacerlo.
Kurtis Pykes 's photo

Kurtis Pykes

10 min

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

7 min

Ver MásVer Más