CommencezCommencez gratuitement

Manipuler des données de documents

Tout au long de ce chapitre, vous avez exploré plusieurs outils pour travailler avec des données de documents semi-structurées dans Postgres. Dans cet exercice final, vous mettrez tous ces outils à contribution pour créer un jeu de données prêt pour l'analyse. Vous utiliserez la table nested_reviews, qui est présentée ci-dessous.

nested_reviews table, showing sample data.

Pour vous aider à démarrer, pandas a été importé sous le nom pd, et un objet de connexion a été créé et stocké dans la variable db_engine. Bonne chance!

Cette activité fait partie du cours

Introduction à NoSQL

Voir le cours

Instructions de l’exercice

  • Utilisez l'opérateur #> pour retourner, au format JSON, le champ imbriqué branch de l'objet location dans la colonne review. Attribuez l'alias branch.
  • Interrogez le champ statement dans la colonne review en utilisant l'opérateur ->>, et attribuez l'alias statement au résultat.
  • Filtrez les résultats pour ne conserver que les enregistrements dont la reviewer location est 'Australia', à l'aide de la fonction json_extract_path_text.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Extract fields from JSON, and filter by reviewer location
query = """
    SELECT
    	review_id,
        ____ #> '{____, ____}' AS ____,
        ____ ->> '____' AS ____,
        rating
    FROM nested_reviews
    WHERE ____(____, '____', '____') = 'Australia'
    ORDER BY rating DESC;
"""

data = pd.read_sql(query, db_engine)
print(data)
Modifier et exécuter le code