Pandas e l'Hello World delle query SQL!
Qui sfrutterai la potenza di pandas per scrivere i risultati della tua query SQL in un DataFrame con una sola riga di Python!
Per prima cosa importerai pandas e creerai l'engine SQLite per 'Chinook.sqlite'. Poi interrogherai il database per selezionare tutti i record dalla tabella Album.
Ricorda che, per selezionare tutti i record dalla tabella Orders nel database Northwind, Hugo ha eseguito il seguente comando:
df = pd.read_sql_query("SELECT * FROM Orders", engine)
Questo esercizio fa parte del corso
Introduzione all'importazione dei dati in Python
Istruzioni dell'esercizio
- Importa il package
pandascon l'aliaspd. - Usando la funzione
create_engine(), crea un engine per il database SQLiteChinook.sqlitee assegnalo alla variabileengine. - Usa la funzione
pandasread_sql_query()per assegnare alla variabiledfil DataFrame con i risultati della seguente query: select all records from la tabellaAlbum. - Il resto del codice serve a confermare che il DataFrame creato con questo metodo è uguale a quello creato con il metodo precedente che hai imparato.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Import packages
from sqlalchemy import create_engine
import ____ as ____
# Create engine: engine
# Execute query and store records in DataFrame: df
df = pd.read_sql_query(____, ____)
# Print head of DataFrame
print(df.head())
# Open engine in context manager and store query result in df1
with engine.connect() as con:
rs = con.execute("SELECT * FROM Album")
df1 = pd.DataFrame(rs.fetchall())
df1.columns = rs.keys()
# Confirm that both methods yield the same result
print(df.equals(df1))