Zacznij terazZacznij za darmo

Filtrowanie zawartości kolumn w Pythonie

Wiesz już, jak wykonywać różne operacje na kolumnach DataFrame – czas zastosować tę wiedzę na prawdziwym zbiorze danych. DataFrame voter_df zawiera informacje o radnych miejskich Dallas z ostatnich kilku lat. Ten skrócony DataFrame przechowuje datę głosowania oraz imię, nazwisko i stanowisko radnego. Twój menedżer poprosił cię o oczyszczenie tych danych, aby można je było później wykorzystać w raportach. Głównym zadaniem jest usunięcie pustych wpisów oraz nieprawidłowych znaków, a następnie wyodrębnienie konkretnych radnych, których dane można zweryfikować.

To jeden z pierwszych kroków w czyszczeniu danych – usunięcie wszystkiego, co wyraźnie odbiega od oczekiwanego formatu. Przyjrzyj się oryginalnym danym i zwróć uwagę, co wygląda podejrzanie w kolumnie VOTER_NAME.

Biblioteka pyspark.sql.functions jest już zaimportowana pod aliasem F.

To ćwiczenie jest częścią kursu

Czyszczenie danych w PySpark

Zobacz kurs

Instrukcje do ćwiczenia

  • Wyświetl unikalne wartości w kolumnie VOTER_NAME.
  • Przefiltruj voter_df tak, aby VOTER_NAME miał od 1 do 20 znaków.
  • Usuń z voter_df wiersze, w których VOTER_NAME zawiera znak _.
  • Wyświetl ponownie unikalne wartości w kolumnie VOTER_NAME.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# Show the distinct VOTER_NAME entries
voter_df.select(____).distinct().show(40, truncate=False)

# Filter voter_df where the VOTER_NAME is 1-20 characters in length
voter_df = ____('length(VOTER_NAME) > 0 and length(VOTER_NAME) < 20')

# Filter out voter_df where the VOTER_NAME contains an underscore
voter_df = voter_df.filter(~ F.col('VOTER_NAME').____)

# Show the distinct VOTER_NAME entries again
voter_df.____(____).____().____(40, truncate=False)
Edytuj i uruchom kod