When / Otherwise
To zadanie jest podobne do poprzedniego, ale tym razem chcesz dodać różne wartości w zależności od stanowiska głosującego. Zmodyfikuj DataFrame voter_df, aby dodać losową liczbę dla każdego członka głosującego z tytułem Councilmember. Użyj wartości 2 dla Mayor i 0 dla wszystkich pozostałych stanowisk.
DataFrame voter_df jest już zdefiniowany i dostępny. Biblioteka pyspark.sql.functions jest dostępna jako F.. Możesz użyć F.rand(), aby wygenerować losową wartość.
To ćwiczenie jest częścią kursu
Czyszczenie danych w PySpark
Instrukcje do ćwiczenia
- Dodaj do
voter_dfkolumnęrandom_valz wynikami metodyF.rand()dla każdego głosującego z tytułem Councilmember. Ustawrandom_valna 2 dla Mayor. Dla wszystkich pozostałych tytułów ustaw wartość 0. - Wyświetl kilka wierszy DataFrame i sprawdź, czy klauzule działają poprawnie.
- Użyj klauzuli
.filter, aby znaleźć wiersze z wartością 0 w kolumnierandom_val.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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()