Charger et analyser les données de 5000 points
Le regroupement (clustering) est une tâche d'apprentissage non supervisée qui consiste à regrouper des objets en grappes présentant une forte similarité. Contrairement aux tâches supervisées, où les données sont étiquetées, le clustering permet de donner du sens à des données non étiquetées. PySpark MLlib inclut l'algorithme populaire K-means pour le clustering. Dans cet exercice en 3 parties, vous déterminerez combien de grappes contient un jeu de données de 5000 lignes et 2 colonnes. Pour ce faire, vous chargerez d'abord les données dans un RDD, analyserez le RDD en fonction du délimiteur, exécuterez le modèle KMeans, évaluerez le modèle et, enfin, visualiserez les grappes.
Dans la première partie, vous chargerez les données dans un RDD, analyserez le RDD selon le délimiteur et convertirez les chaînes de caractères en entiers.
N'oubliez pas que vous avez un SparkContext sc disponible dans votre espace de travail. La variable file_path (le chemin vers le fichier 5000_points.txt) est aussi déjà disponible dans votre espace de travail.
Cette activité fait partie du cours
Principes de Big Data avec PySpark
Instructions de l’exercice
- Chargez le jeu de données
5000_pointsdans un RDD nomméclusterRDD. - Transformez
clusterRDDen séparant les lignes selon la tabulation ("\t"). - Transformez le RDD découpé pour créer une liste d'entiers pour les deux colonnes.
- Confirmez qu'il y a 5000 lignes dans le jeu de données.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Load the dataset into an RDD
clusterRDD = sc.____(file_path)
# Split the RDD based on tab
rdd_split = clusterRDD.____(lambda x: ____.split(____))
# Transform the split RDD by creating a list of integers
rdd_split_int = rdd_split.____(lambda x: [int(____), int(x[1])])
# Count the number of rows in RDD
print("There are {} rows in the rdd_split_int dataset".format(____.____()))