Cargando un DataFrame de Pandas con un query de MySQL

Cargando un DataFrame de Pandas con un query de MySQL

Estoy utilizando la distribución de Anaconda, que ya viene con muchas de las cosas más útiles para Python listas, entre otras el paquete sqlalchemy, que utilizaremos para conectarnos a MySQL.

Lo primero que haremos es instalar pymysql:

pip install pymysql

(Utilizo Windows, por lo que no tengo problemas con mayúsculas y minúsculas, pero en linux probablemente haya que usar pip install PyMySQL, no lo sé con certeza)

Ahora...

from sqlalchemy import create_engine
import pandas as pd

y creamos la conexión a la base de datos:

db = create_engine('mysql+pymysql://db_user:db_pass@db_host/db_database')

db_user es el usuario, db_pass su password, db_host el host al que nos conectamos y db_database la base de datos. Por lo que, para el proyecto que estoy desarrollando, la siguiente conexión es válida:

db = create_engine('mysql+pymysql://root:@localhost/sd2020')

Finalmente, cargamos un query a un dataframe:

df = pd.read_sql('SELECT * FROM juegos', con=db)