CommencerCommencer gratuitement

Par nombre d'images

Votre prochaine tâche dans la construction d'un pipeline de données pour cet ensemble de données est de créer quelques colonnes orientées vers l'analyse. On vous a demandé de calculer le nombre de chiens présents dans chaque image en vous basant sur la colonne dog_list que vous avez créée précédemment. Vous avez également créé le site DogType qui permettra une meilleure analyse des données dans certaines colonnes.

Le site joined_df est disponible tel que vous l'avez défini la dernière fois, et le type de structure DogType est défini. pyspark.sql.functions est disponible sous l'alias F.

Cet exercice fait partie du cours

Nettoyer des données avec PySpark

Afficher le cours

Instructions

  • Créez une fonction Python pour diviser chaque entrée de dog_list en parties appropriées. Veillez à convertir les chaînes de caractères dans les types appropriés, sinon le DogType ne sera pas analysé correctement.
  • Créez un UDF à l'aide de la fonction ci-dessus.
  • Utilisez l'UDF pour créer une nouvelle colonne appelée dogs.
  • Indiquez le nombre de chiens dans la nouvelle colonne pour les 10 premières lignes.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Create a function to return the number and type of dogs as a tuple
def dogParse(doglist):
  dogs = []
  for dog in doglist:
    (breed, start_x, start_y, end_x, end_y) = dog.____('____')
    dogs.append((____, int(____), ____, ____, ____))
  return dogs

# Create a UDF
udfDogParse = ____(____, ArrayType(____))

# Use the UDF to list of dogs
joined_df = joined_df.____('____', ____('____'))

# Show the number of dogs in the first 10 rows
joined_df.____(____('____')).____(____)
Modifier et exécuter le code