НачатьНачать бесплатно

Удаление некорректных строк

После успешного удаления строк с комментариями вы получили информацию об общей структуре данных. DataFrame должен содержать не менее 5 столбцов, разделённых символом табуляции. Обратите внимание, что исходный DataFrame содержит только один столбец, поэтому данные нужно разбить по символу табуляции (\t).

DataFrame annotations_df уже доступен — строки с комментариями из него удалены. Библиотека spark.sql.functions доступна под псевдонимом F. Исходное количество строк в DataFrame сохранено в переменной initial_count.

Это упражнение является частью курса

Очистка данных с помощью PySpark

Посмотреть курс

Инструкции к упражнению

  • Создайте новую переменную tmp_fields, разбив столбец '_c0' DataFrame annotations_df по символу табуляции.
  • Добавьте в annotations_df новый столбец 'colcount', отражающий количество полей, определённых на предыдущем шаге.
  • Отфильтруйте из annotations_df все строки, в которых количество полей меньше 5.
  • Подсчитайте количество строк в DataFrame и сравните результат с initial_count.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Split _c0 on the tab character and store the list in a variable
tmp_fields = ____(annotations_df['_c0'], ____)

# Create the colcount column on the DataFrame
annotations_df = annotations_df.____('____', ____(____))

# Remove any rows containing fewer than 5 fields
annotations_df_filtered = annotations_df.____(~ (____))

# Count the number of rows
final_count = ____
print("Initial count: %d\nFinal count: %d" % (initial_count, final_count))
Редактировать и запускать код