Het 5000 points-bestand laden en parsen
Clustering is een unsupervised learning-taak waarbij je objecten groepeert in clusters met hoge overeenkomst. In tegenstelling tot supervised taken, waar data gelabeld is, kun je clustering gebruiken om onge labelde data te begrijpen. PySpark MLlib bevat het populaire K-means-algoritme voor clustering. In deze oefening in 3 delen ontdek je hoeveel clusters er zijn in een gegevensset met 5000 rijen en 2 kolommen. Hiervoor laad je eerst de data in een RDD, parse je de RDD op basis van het scheidingsteken, voer je het KMeans-model uit, evalueer je het model en visualiseer je tot slot de clusters.
In het eerste deel laad je de data in een RDD, parse je de RDD op basis van het scheidingsteken en zet je de stringwaarden om naar gehele getallen.
Onthoud: je hebt een SparkContext sc beschikbaar in je werkruimte. Ook de variabele file_path (het pad naar het bestand 5000_points.txt) is al beschikbaar in je werkruimte.
Deze oefening maakt deel uit van de cursus
Big Data Fundamentals met PySpark
Oefeninstructies
- Laad de
5000_points-gegevensset in een RDD met de naamclusterRDD. - Transformeer
clusterRDDdoor de regels te splitsen op de tab ("\t"). - Transformeer de gesplitste RDD om een lijst met gehele getallen te maken voor de twee kolommen.
- Controleer dat er 5000 rijen in de gegevensset staan.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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(____.____()))