Pandas et les requêtes SQL Hello World !
Ici, vous profiterez de la puissance de pandas
pour écrire les résultats de votre requête SQL dans un DataFrame en une seule ligne de code Python !
Vous allez d'abord importer pandas
et créer le moteur SQLite 'Chinook.sqlite'
. Vous allez ensuite interroger la base de données pour sélectionner tous les enregistrements de la table Album
.
Rappelez-vous que pour sélectionner tous les enregistrements de la table Orders
dans la base de données Northwind, Hugo a exécuté la commande suivante :
df = pd.read_sql_query("SELECT * FROM Orders", engine)
Cet exercice fait partie du cours
Introduction à l'importation de données en Python
Instructions
- Importez le package
pandas
en utilisant l'aliaspd
. - En utilisant la fonction
create_engine()
, créez un moteur pour la base de données SQLiteChinook.sqlite
et affectez-le à la variableengine
. - Utilisez la fonction
pandas
read_sql_query()
pour affecter à la variabledf
le DataFrame des résultats de la requête suivante : sélectionner tous les enregistrements de la tableAlbum
. - Le reste du code est inclus pour confirmer que le DataFrame créé par cette méthode est égal à celui créé par la méthode précédente.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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))