Создание базового RDD и его преобразование
Объём неструктурированных данных (лог-файлы, изображения, бинарные файлы) стремительно растёт, и PySpark — отличный инструмент для анализа таких данных с помощью RDD. В этом упражнении из трёх частей вы напишете код, который находит наиболее часто встречающиеся слова в полном собрании сочинений Уильяма Шекспира.
Краткий план программы для подсчёта слов:
- Создайте базовый RDD из файла
Complete_Shakespeare.txt. - С помощью преобразования RDD получите развёрнутый список слов из каждого элемента базового RDD.
- Удалите стоп-слова из данных.
- Создайте парный RDD, где каждый элемент — кортеж вида
('w', 1). - Сгруппируйте элементы парного RDD по ключу (слову) и просуммируйте их значения.
- Поменяйте местами ключи (слова) и значения (счётчики) так, чтобы ключом стало количество, а значением — слово.
- Отсортируйте RDD по убыванию и выведите 10 наиболее часто встречающихся слов вместе с их частотами.
В этой первой части вы создадите базовый RDD из файла Complete_Shakespeare.txt и преобразуете его в развёрнутый список слов.
Напомним: SparkContext sc уже доступен в вашем рабочем пространстве. Переменная file_path (путь к файлу Complete_Shakespeare.txt) также уже загружена.
Это упражнение является частью курса
Основы Big Data с PySpark
Инструкции к упражнению
- Создайте RDD с именем
baseRDD, который считывает строки изfile_path. - Преобразуйте
baseRDDв развёрнутый список слов и создайте новыйsplitRDD. - Подсчитайте общее количество слов в
splitRDD.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Create a baseRDD from the file path
baseRDD = sc.____(file_path)
# Split the lines of baseRDD into words
splitRDD = baseRDD.____(lambda x: x.split())
# Count the total number of words
print("Total number of words in splitRDD:", splitRDD.____())