Calcula y representa la suma de errores cuadrados
Ahora vas a calcular la suma de errores cuadrados para distintos números de clústeres, de 1 a 10.
Usarás los datos RFMT normalizados que creaste en el ejercicio anterior, guardados como datamart_rfmt_normalized. El módulo KMeans de scikit-learn también está importado. Además, hemos inicializado un diccionario vacío para guardar la suma de errores cuadrados como sse = {}.
Si quieres, explora los datos en la consola.
Este ejercicio forma parte del curso
Segmentación de clientes en Python
Instrucciones del ejercicio
- Inicializa KMeans con
kclústeres y random_state=1, y ajusta KMeans sobre el conjunto normalizado. - Asigna la suma de distancias cuadradas al elemento
kdel diccionariosse. - Añade el título del gráfico "The Elbow Method", la etiqueta del eje X "k" y la etiqueta del eje Y "SSE".
- Representa los valores de SSE para cada
kguardado como clave en el diccionario.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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()