Clustering con KMeans

Código
Avanzado
ScikitLearn
ScikitLearn
90 min
200 XP
Actualizado: 28/02/2025

¡Practica y certifícate!

Retroalimentación
Soluciones
Certificado
Comenzar

Descripción

Crea un modelo de clustering con Scikit-Learn.

Tu tarea es aplicar el algoritmo KMeans para agrupar un conjunto de datos de vinos con diferentes características. El objetivo es identificar clústeres naturales en el conjunto de datos y analizar la separación entre estos grupos.

Guarda tu progreso

Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.

Progreso guardado
Asistente IA
Ejercicios
Iniciar sesión gratis

Más de 25.000 desarrolladores ya confían en CertiDevs

Carga del conjunto de datos: Usa el conjunto de datos 'wine' disponible en Scikit Learn. Este conjunto contiene tres tipos de vinos con sus respectivas características químicas.

Preprocesamiento: Escala las características del conjunto de datos para asegurar que todas contribuyan de manera uniforme al clustering.

Implementación de KMeans:

  • Utiliza KMeans para agrupar los datos en tres clústeres.
  • Asegúrate de establecer la semilla de aleatoriedad en 42 para reproducibilidad.

Evaluación:

  • Calcula e imprime la inercia del modelo.
  • Calcula y muestra el coeficiente de silueta promedio para evaluar la calidad del clustering.

Visualización:

  • Reduce las dimensionalidad de los datos a dos dimensiones usando PCA para facilitar la visualización.
  • Muestra un gráfico de dispersión de los dos componentes principales coloreado por clúster.

Comparación:

  • Imprime cuántos vinos pertenecen a cada clúster.

Solución al ejercicio

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el examen para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

Practica con exámenes de ScikitLearn

Mejora tus habilidades con cientos de exámenes de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.

Retroalimentación

Aprende de tus errores

Progreso

Mide tu avance

Certificación

Valida tus habilidades

Únete a miles de desarrolladores mejorando sus habilidades

⭐⭐⭐⭐⭐
4.9/5 valoración