CommencezCommencez gratuitement

Requêtes SQL pour filtrer une table

Dans l'exercice précédent, vous avez exécuté une requête SQL simple sur un DataFrame. Vous pouvez rédiger des requêtes plus élaborées pour obtenir exactement le résultat souhaité et l'utiliser ensuite pour de l'analyse, comme la visualisation de données et le Machine Learning. Dans cet exercice, nous allons utiliser la table temporaire people que vous avez créée plus tôt, filtrer les lignes où « sex » est male et female, puis créer deux DataFrames.

Veuillez noter que la « solution » est sensible à la casse pour les commandes SQL (par exemple, elle accepte FROM mais pas from). La « solution » n'accepte que « == » et non « = ».

Rappel : vous avez déjà une SparkSession spark et une table temporaire people disponibles dans votre espace de travail.

Cette activité fait partie du cours

Principes de Big Data avec PySpark

Voir le cours

Instructions de l’exercice

  • Filtrez la table people pour sélectionner toutes les lignes où sex est female dans le DataFrame people_female_df.
  • Filtrez la table people pour sélectionner toutes les lignes où sex est male dans le DataFrame people_male_df.
  • Comptez le nombre de lignes dans les DataFrames people_female et people_male.

Exercice interactif pratique

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

# Filter the people table to select female sex 
people_female_df = spark.____('SELECT * FROM ____ WHERE sex=="____"')

# Filter the people table DataFrame to select male sex
people_male_df = spark.____('SELECT * ____ people ____ ____=="____"')

# Count the number of rows in both people_df_female and people_male_df DataFrames
print("There are {} rows in the people_female_df and {} rows in the people_male_df DataFrames".format(people_female_df.____(), people_male_df.____()))
Modifier et exécuter le code