En datos unidimensionales, no use análisis de conglomerados.
El análisis de conglomerados suele ser una técnica multivariante. O permítanme decirlo al revés: para los datos unidimensionales, que están completamente ordenados, existen técnicas mucho mejores. El uso de k-means y técnicas similares aquí es un desperdicio total, a menos que haga un esfuerzo suficiente para optimizarlas realmente para el caso 1-d.
Solo para darle un ejemplo: para k significa que es común usar k objetos aleatorios como semillas iniciales. Para los datos unidimensionales, es bastante fácil hacerlo mejor simplemente usando los cuantiles apropiados (1 / 2k, 3 / 2k, 5 / 2k, etc.), después de ordenar los datos una vez , y luego optimizar desde este punto de partida. Sin embargo, los datos 2D no se pueden ordenar por completo. Y en una cuadrícula, probablemente habrá celdas vacías.
Tampoco lo llamaría clúster. Yo lo llamaría intervalo . Lo que realmente quiere hacer es optimizar los bordes del intervalo. Si hace k-means, probará para cada objeto si debe moverse a otro clúster. Eso no tiene sentido en 1D: solo se deben verificar los objetos en los bordes del intervalo. Obviamente, es mucho más rápido, ya que solo hay ~ 2k objetos allí. Si aún no prefieren otros intervalos, los objetos más centrales tampoco lo harán.
Es posible que desee analizar técnicas como la optimización de Jenks Natural Breaks , por ejemplo.
O puede hacer una estimación de densidad del núcleo y buscar mínimos locales de la densidad para dividir allí. ¡Lo bueno es que no necesita especificar k para esto!
PD: utilice la función de búsqueda. Aquí hay algunas preguntas sobre la agrupación de datos 1-d que se perdió: