ПочатиПочніть безкоштовно

Підрахунок на зображення

Ваше наступне завдання під час побудови конвеєра обробки даних для цього набору даних — створити кілька стовпців для аналізу. Вас попросили порахувати кількість собак, знайдених на кожному зображенні, на основі стовпця dog_list, який ви створили раніше. Ви також створили DogType, що дасть змогу краще розбирати дані в деяких стовпцях.

joined_df доступний у тому вигляді, як ви його востаннє визначили, а DogType як StructType уже оголошено. pyspark.sql.functions доступний під псевдонімом F.

Ця вправа є частиною курсу

Очищення даних у PySpark

Переглянути курс

Інструкції до вправи

  • Створіть функцію Python, щоб розбити кожен елемент у dog_list на відповідні частини. Обов'язково перетворіть рядки на відповідні типи, інакше DogType не розпарситься коректно.
  • Створіть UDF на основі цієї функції.
  • Використайте UDF, щоб створити новий стовпець dogs.
  • Покажіть кількість собак у новому стовпці для перших 10 рядків.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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.____(____('____')).____(____)
Редагувати та запускати код