Încărcarea și parsarea setului de date cu 5000 de puncte
Clustering-ul este sarcina de învățare nesupervizată care presupune gruparea obiectelor în clustere cu grad ridicat de similaritate. Spre deosebire de sarcinile supervizate, unde datele sunt etichetate, clustering-ul poate fi folosit pentru a interpreta date needtichetate. PySpark MLlib include popularul algoritm K-means pentru clustering. În acest exercițiu în 3 părți, vei descoperi câte clustere există într-un set de date cu 5000 de rânduri și 2 coloane. Pentru aceasta, vei încărca mai întâi datele într-un RDD, vei parsa RDD-ul pe baza delimitatorului, vei rula modelul KMeans, vei evalua modelul și, în final, vei vizualiza clusterele.
În prima parte, vei încărca datele într-un RDD, vei parsa RDD-ul pe baza delimitatorului și vei converti tipul string al datelor la întreg.
Reține că ai un SparkContext sc disponibil în spațiul de lucru. De asemenea, variabila file_path (care reprezintă calea către fișierul 5000_points.txt) este deja disponibilă în spațiul de lucru.
Acest exercițiu face parte din cursul
Fundamentele Big Data cu PySpark
Instrucțiuni pentru exercițiu
- Încarcă setul de date
5000_pointsîntr-un RDD numitclusterRDD. - Transformă
clusterRDDîmpărțind liniile după caracterul tab ("\t"). - Transformă RDD-ul rezultat pentru a crea o listă de întregi pentru cele două coloane.
- Confirmă că setul de date conține 5000 de rânduri.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____.____()))