1. Nauka
  2. /
  3. Kursy
  4. /
  5. Czyszczenie danych w PySpark

Connected

ćwiczenie

Procentowy udział pikseli psa

Ostatnim krokiem przetwarzania danych z adnotacjami psów jest wyznaczenie procentowego udziału pikseli reprezentujących psa (lub psy) w każdym obrazie. Wykorzystaj techniki poznane w tym kursie, aby obliczyć te informacje i dodać je jako kolumny do dalszej analizy.

Aby obliczyć procentowy udział pikseli, najpierw wyznacz łączną liczbę pikseli reprezentujących każdego psa, a następnie zsumuj je dla całego obrazu. Pole ograniczającego prostokąta (bounding box) obliczysz według wzoru:

(Xend - Xstart) * (Yend - Ystart)

UWAGA: W tym przypadku możesz pominąć możliwość nakładania się prostokątów ograniczających.

Procentowy udział oblicz, dzieląc łączną liczbę pikseli „psa" przez całkowity rozmiar obrazu i mnożąc wynik przez 100.
DataFrame joined_df jest w takim stanie, w jakim go ostatnio używano. Biblioteka pyspark.sql.functions jest dostępna pod aliasem F.

Instrukcje

100 XP
  • Zdefiniuj funkcję Pythona, która przyjmuje listę krotek (obiekty psów) i oblicza łączną liczbę pikseli „psa" w obrazie.
  • Utwórz UDF z tej funkcji i użyj go do dodania do DataFrame nowej kolumny 'dog_pixels'.
  • Utwórz kolejną kolumnę, 'dog_percent', reprezentującą procentowy udział 'dog_pixels' w obrazie. Upewnij się, że wartości mieszczą się w przedziale 0–100%. Odwołaj się do kolumny wyłącznie przez jej nazwę jako ciąg znaków (tzn. "nazwakolumny", a nie df.nazwakolumny).
  • Wyświetl pierwsze 10 wierszy, w których udział 'dog_pixels' przekracza 60%. Użyj zapytania w stylu SQL (tzn. 'nazwakolumny > ____').