python y mysql

En el post de hoy vamos a ver como se puede establecer conexión desde Python con una base de datos MySQL. Para ello utilizaremos un driver llamado connect, que se encuentra en la libreria MySQL y que nos va a permitir acceder a los datos almacenados en nuestra base de datos.

Pandas y mysql.connect para el minado de bases de datos

Además, vamos a hacer uso de la libreria Pandas, una de las librerias más potentes en Python para el proceso y análisis de datos estadísticos.

Código fuente para acceder a base de datos desde Anaconda Spyder

Después de importar tanto la librería Pandas como el driver MySQL Connect, introducimos el host, usuario, contraseña y el nombre de las base de datos.

import mysql.connect

A continuación contruimos un texto query que no es más que una orden SQL para MySQL. Este devolverá la tabla solicitada, convirtiéndola en una dataframe de Pandas. A partir de ahí, podemos trabajar con Pandas con los recursos de los objetos de tipo dataframe.

Este es un mecanismo muy ulitizado para alimentar de datos almacenados, Python. Puede llevarse a cabo con ficheros, json, xml, csv, txt de un modo muy semejante. Esta plasticidad de Python y Pandas lo convierte hoy en una herramienta indispensable para el tratamiento de cualquier tipo de datos. Especialmente en disciplinas como la ciencia de datos.

Es importante cerrar la conexión con la base de datos con mydb.close para evitar causar conflicto en el acceso a datos. Además, evita ralentizar innecesariamente las bases de datos transaccionales.

pandas dataframe – df.info()

Finalmente, y ya haciendo uso de Pandas se solicita la información de las variables extraidas con df.info() dando lugar a la siguiente salida:

Con info podréis obtener una descripción básica de las variables extraidas de la base de datos MySQL (a modo de diccionario de datos) ahora alojadas en el dataframe de Pandas. Detalla el número de tuplas extraidas, si existen valores perdidos, el tipo de dato…

pandas dataframe – print(df)

Para sacar por pantalla el dataframe como tal, podéis utilizar print(df).

Imagen del resumen extraido por Spyder de la matriz construida.

Así pues, de este modo gracias a Pandas puedes sacar el mayor partido a Python y MySQL. El driver mysql.connect permite llevar a cabo el acceso a base de datos. Una vez que hemos convertido la consulta SQL en un dataframe de Pandas esté podrá ser explotado para su tratamiento, descripción o minado.

Mucho más sobre en Python database-academy.eu

Tutorial de Pandas -> W3Schools

Autor: ignacio

Profesor de Sistemas de Gestión de Información

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *