Skip to main content
Pandas es una biblioteca popular para la manipulación y el análisis de datos en Python. En la versión 2 de chDB, hemos mejorado el rendimiento de las consultas sobre DataFrames de Pandas y hemos incorporado la función de tabla Python. En esta guía, aprenderemos a consultar Pandas con la función de tabla Python.

Configuración

Primero, creemos un entorno virtual:
Y ahora instalaremos chDB. Asegúrate de tener la versión 2.0.2 o una superior:
Y ahora vamos a instalar Pandas y un par de librerías más:
Vamos a usar ipython para ejecutar los comandos del resto de la guía; puedes iniciarlo ejecutando:
También puedes usar el código en un script de Python o en tu notebook favorito.

Crear un DataFrame de Pandas a partir de una URL

Vamos a consultar algunos datos del repositorio de GitHub de StatsBomb. Primero, importemos requests y pandas:
A continuación, cargaremos uno de los archivos JSON de partidos en un DataFrame:
Veamos los datos con los que vamos a trabajar:
A continuación, cargaremos uno de los archivos JSON de eventos y también añadiremos una columna llamada match_id al DataFrame:
Y, de nuevo, echemos un vistazo a la primera fila:

Consultar DataFrames de Pandas

A continuación, veamos cómo consultar estos DataFrames con chDB. Importaremos la biblioteca:
Podemos consultar DataFrames de Pandas mediante la función de tabla Python:
Así, si quisiéramos listar las columnas de matches_df, podríamos escribir lo siguiente:
Luego podríamos averiguar qué árbitros han arbitrado más de un partido escribiendo la siguiente consulta:
Ahora, veamos events_df.

Unir DataFrames de Pandas

También podemos unir DataFrames en una consulta. Por ejemplo, para obtener una visión general del partido, podríamos escribir la siguiente consulta:

Rellenar una tabla a partir de un DataFrame

También podemos crear y rellenar tablas de ClickHouse a partir de DataFrames. Si queremos crear una tabla en chDB, debemos usar la API de Stateful Session. Importemos el módulo session:
Inicializa una sesión:
A continuación, crearemos una base de datos:
A continuación, crea la tabla events a partir de events_df:
A continuación, podemos ejecutar la consulta que devuelve el jugador que más pases recibe:

Unir un DataFrame de Pandas con una tabla

Por último, también podemos actualizar nuestra consulta para hacer join entre el DataFrame matches_df y la tabla statsbomb.events:
Última modificación el 23 de julio de 2026