Kareler toplamı hatasını hesapla ve görselleştir
Şimdi, küme sayısı 1'den 10'a kadar değişirken kareler toplamı hatasını hesaplayacaksın.
Önceki egzersizde oluşturduğun normalize edilmiş RFMT verisini kullanacaksın; bu veri datamart_rfmt_normalized olarak saklı. scikit-learn içindeki KMeans modülü de içe aktarılmış durumda. Ayrıca, kareler toplamı hatalarını saklamak için boş bir sözlük başlattık: sse = {}.
Konsolda veriyi özgürce keşfedebilirsin.
Bu egzersiz, kursun bir parçasıdır
Python ile Müşteri Segmentasyonu
Egzersiz talimatları
- KMeans'i
kküme ve random_state 1 ile başlat ve normalize edilmiş veri kümesi üzerinde fit et. - Kareler toplamı uzaklıkları
ssesözlüğününköğesine ata. - Grafik başlığını "The Elbow Method", X ekseni etiketini "k" ve Y ekseni etiketini "SSE" olarak ekle.
- Sözlükte anahtarlar olarak saklanan her
kiçin SSE değerlerini görselleştir.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Fit KMeans and calculate SSE for each k between 1 and 10
for k in range(1, 11):
# Initialize KMeans with k clusters and fit it
kmeans = ____(____=____, ____=1 ).____(datamart_rfmt_normalized)
# Assign sum of squared distances to k element of the sse dictionary
____[____] = kmeans.____
# Add the plot title, x and y axis labels
plt.____('The Elbow Method')
plt.____('____')
plt.____('____')
# Plot SSE values for each k stored as keys in the dictionary
sns.____(x=list(sse.____()), y=list(sse.____()))
plt.show()