Examen des lignes non valides
Vous avez réussi à filtrer les lignes à l'aide d'une jointure, mais vous souhaitez parfois examiner les données non valides. Ces données peuvent être stockées en vue d'un traitement ultérieur ou pour dépanner vos sources de données.
Vous souhaitez trouver la différence entre deux DataFrame et stocker les lignes non valides.
L'objet spark
est défini et pyspark.sql.functions
est importé en tant que F
. Le DataFrame original split_df
et le DataFrame joint joined_df
sont disponibles tels qu'ils étaient dans leur état précédent.
Cet exercice fait partie du cours
Nettoyer des données avec PySpark
Instructions
- Déterminez le nombre de lignes pour chaque DataFrame.
- Créez un DataFrame contenant uniquement les lignes non valides.
- Validez que le décompte du nouveau DataFrame est conforme aux attentes.
- Déterminez le nombre de lignes de dossiers distinctes supprimées.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Determine the row counts for each DataFrame
split_count = ____
joined_count = ____
# Create a DataFrame containing the invalid rows
invalid_df = split_df.____(____(joined_df), '____', '____')
# Validate the count of the new DataFrame is as expected
invalid_count = ____
print(" split_df:\t%d\n joined_df:\t%d\n invalid_df: \t%d" % (split_count, joined_count, invalid_count))
# Determine the number of distinct folder rows removed
invalid_folder_count = invalid_df.____('____').____.____
print("%d distinct invalid folders found" % invalid_folder_count)