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)