MulaiMulai sekarang secara gratis

Memvisualisasikan klaster

Anda baru saja melatih model k-means dengan nilai k optimum (k=16) dan menghasilkan pusat klaster (centroid). Pada latihan terakhir ini, Anda akan memvisualisasikan klaster dan centroid dengan menumpangkannya. Ini akan menunjukkan seberapa baik proses clustering bekerja (idealnya, klaster saling terpisah dan centroid berada di tengah klaster masing-masing).

Untuk mencapainya, Anda akan terlebih dahulu mengonversi RDD rdd_split_int menjadi Spark DataFrame, lalu menjadi DataFrame Pandas yang dapat digunakan untuk plotting. Demikian pula, Anda akan mengonversi cluster_centers menjadi DataFrame Pandas. Setelah kedua DataFrame dibuat, Anda akan membuat plot sebar menggunakan Matplotlib.

SparkContext sc serta variabel rdd_split_int dan cluster_centers, serta paket matplotlib.pyplot (diimpor sebagai plt) tersedia di ruang kerja Anda.

Latihan ini adalah bagian dari kursus

Fundamental Big Data dengan PySpark

Lihat Kursus

Petunjuk latihan

  • Konversikan RDD rdd_split_int menjadi Spark DataFrame, lalu menjadi DataFrame pandas.
  • Buat DataFrame pandas dari daftar cluster_centers.
  • Buat plot sebar dari DataFrame pandas untuk data mentah (rdd_split_int_df_pandas) dan tumpangkan dengan plot sebar dari DataFrame Pandas untuk centroid (cluster_centers_pandas).

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Convert rdd_split_int RDD into Spark DataFrame and then to Pandas DataFrame
rdd_split_int_df_pandas = spark.____(rdd_split_int, schema=["col1", "col2"]).toPandas()

# Convert cluster_centers to a pandas DataFrame
cluster_centers_pandas = pd.DataFrame(____, columns=["col1", "col2"])

# Create an overlaid scatter plot of clusters and centroids
plt.scatter(rdd_split_int_df_pandas["col1"], rdd_split_int_df_pandas["col2"])
plt.scatter(____["col1"], ____["col2"], color="red", marker="x")
plt.show()
Edit dan Jalankan Kode