When / Otherwise
Cette exigence ressemble à la précédente, mais vous voulez maintenant ajouter plusieurs valeurs selon le poste de l'électeur. Modifiez votre DataFrame voter_df pour ajouter un nombre aléatoire à tout membre votant dont le poste est Councilmember. Utilisez 2 pour le Mayor et 0 pour tout autre poste.
Le DataFrame voter_df est défini et à votre disposition. La bibliothèque pyspark.sql.functions est disponible sous F. Vous pouvez utiliser F.rand() pour générer la valeur aléatoire.
Cette activité fait partie du cours
Nettoyer des données avec PySpark
Instructions de l’exercice
- Ajoutez à
voter_dfune colonne nomméerandom_valcontenant le résultat de la méthodeF.rand()pour tout électeur ayant le titre Councilmember. Attribuez la valeur 2 àrandom_valpour le Mayor. Attribuez la valeur 0 à tout autre titre. - Affichez quelques lignes du DataFrame et vérifiez si les clauses ont fonctionné.
- Utilisez la clause
.filterpour trouver 0 dansrandom_val.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Add a column to voter_df for a voter based on their position
voter_df = voter_df.____('random_val',
when(voter_df.TITLE == 'Councilmember', ____)
.____(____, 2)
____
# Show some of the DataFrame rows
voter_df.show()
# Use the .filter() clause with random_val
voter_df.____(____).show()