Segmentación de datos de variación de potenciaEstamos trabajando en un caso práctico donde el cliente cuenta con datos de variación de potencia (promedio y máximo) de un producto. Anteriormente, segmentaban manualmente el gráfico en diferentes estados de carga de trabajo según los cambios en el valor de potencia. Ahora, buscan automatizar este proceso de segmentación con JMP.
He adjuntado los datos junto con una captura de pantalla que muestra el resultado esperado (derivado manualmente). Cada estado identificado se define por un punto inicial y uno final, que se listan en la columna "Punto inicial/final". Para cada estado, se aplica un margen de ±5 filas alrededor de los puntos inicial y final reales.
Algunas aclaraciones importantes después de hablar con el cliente:
1. La variación no está basada en el tiempo.
2. El número de estados no es fijo. No siempre será 11, como se muestra en la captura de pantalla.
3. Los estados 7 y 8 en su resultado manual se distinguieron utilizando la segunda variable del eje Y
Experimenté con la agrupación jerárquica y la agrupación k-media, lo que produjo resultados cercanos al resultado manual, pero no una coincidencia exacta. ¿Alguna sugerencia para automatizar mejor este proceso de segmentación en JMP?
Re: Segmentación de datos de variación de potenciaMi idea inicial sería eliminar los ceros, suavizar los datos y buscar picos en la derivada como marcadores de los diferentes segmentos. Creo que es factible, pero requiere un poco de fuerza bruta. La agrupación en clústeres parece una solución más atractiva, aunque no tengo mucha experiencia con ella.
Usando la agrupación jerárquica, logré avanzar un poco al configurar el método como único, el formato de datos como apilado y sin estandarizar. Si entiendo bien, creo que esto formará agrupaciones al observar puntos "vecinos" cercanos tanto en tiempo como en potencia, considerándolos como puntos en un espacio 2D con el tiempo como X y la potencia como Y. ¿Quizás alguien más pueda continuar desde aquí?
Hierarchical Cluster(
Y( :"Time(s)"n, :"Power AVG (W)"n ),
Method( "Single" ),
Standardize Data( 0, "(for backward compatibility)" ),
Standardize By( "Unstandardized" ),
Dendrogram Scale( "Distance Scale" ),
Number of Clusters( 20 ),
SendToReport(
Dispatch( {"Dendrogram"}, "Clust Dendro", FrameBox,
{Frame Size( 47, 700 )}
)
)
);
Re: Segmentación de datos de variación de potenciaPensándolo bien, creo que usar "Los datos están apilados" es incorrecto. Pero usar "Único" + "Sin estandarizar" sigue dando buenos resultados en mi caso.