Créer un RDD de base et le transformer
Le volume de données non structurées (lignes de journaux, images, fichiers binaires) ne cesse d'augmenter, et PySpark est un excellent cadre pour analyser ce type de données au moyen de RDD. Dans cet exercice en 3 parties, vous écrirez du code qui calcule les mots les plus fréquents à partir des Œuvres complètes de William Shakespeare.
Voici les grandes étapes pour écrire le programme de comptage de mots :
- Créez un RDD de base à partir du fichier
Complete_Shakespeare.txt. - Utilisez une transformation RDD pour créer une longue liste de mots à partir de chaque élément du RDD de base.
- Retirez les mots vides (stop words) de vos données.
- Créez un RDD de paires où chaque élément est un tuple paire de
('w', 1). - Regroupez les éléments du RDD de paires par clé (mot) et additionnez leurs valeurs.
- Échangez les clés (mots) et les valeurs (comptes) de sorte que la clé soit le compte et la valeur, le mot.
- Enfin, triez le RDD en ordre décroissant et affichez les 10 mots les plus fréquents avec leur fréquence.
Dans ce premier exercice, vous allez créer un RDD de base à partir du fichier Complete_Shakespeare.txt et le transformer pour obtenir une longue liste de mots.
N'oubliez pas : un SparkContext sc est déjà disponible dans votre espace de travail. Une variable file_path (le chemin vers le fichier Complete_Shakespeare.txt) est aussi chargée pour vous.
Cette activité fait partie du cours
Principes de Big Data avec PySpark
Instructions de l’exercice
- Créez un RDD appelé
baseRDDqui lit les lignes à partir defile_path. - Transformez
baseRDDen une longue liste de mots et créez un nouveausplitRDD. - Comptez le nombre total de mots dans
splitRDD.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# 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.____())