Examiner les lignes invalides
Vous avez réussi à filtrer les lignes à l’aide d’une jointure, mais il est parfois utile d’examiner les données invalides. Ces données peuvent être conservées pour un traitement ultérieur ou pour diagnostiquer vos sources de données.
Vous souhaitez trouver la différence entre deux DataFrames et stocker les lignes invalides.
L’objet spark est défini et pyspark.sql.functions est importé sous le nom F. Le DataFrame d’origine split_df et le DataFrame joint joined_df sont disponibles dans leurs états précédents.
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 ne contenant que les lignes invalides.
- Vérifiez que le nombre de lignes 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)