Добавление поля ID
При работе с данными иногда требуется обратиться лишь к определённым полям и выполнить над ними различные операции. В этом упражнении найдите все уникальные имена избирателей из DataFrame и присвойте каждому из них уникальный идентификатор. Обратите внимание: идентификаторы в Spark назначаются на основе раздела DataFrame, поэтому их значения могут значительно превышать фактическое количество строк.
Благодаря отложенной обработке в Spark идентификаторы фактически генерируются только при выполнении действия и могут быть достаточно случайными в зависимости от размера набора данных.
В вашем рабочем пространстве доступны: сессия spark и DataFrame df, содержащий данные из файла DallasCouncilVotes.csv.gz. Библиотека pyspark.sql.functions подключена под псевдонимом F.
Это упражнение является частью курса
Очистка данных с помощью PySpark
Инструкции к упражнению
- Выберите уникальные записи из столбца
VOTER NAMEи создайте новый DataFrame с именемvoter_df. - Подсчитайте количество строк в DataFrame
voter_df. - Добавьте столбец ROW_ID, используя подходящую функцию Spark.
- Выведите 10 строк с наибольшими значениями ROW_ID.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Select all the unique council voters
voter_df = df.____(df["VOTER NAME"]).____()
# Count the rows in voter_df
print("\nThere are %d rows in the voter_df DataFrame.\n" % ____)
# Add a ROW_ID
voter_df = voter_df.____('ROW_ID', F.____())
# Show the rows with 10 highest IDs in the set
voter_df.orderBy(voter_df.____.desc()).show(____)