전력 변화 데이터 분할저희는 고객이 제품의 전력 변화 데이터(평균 및 최대)를 가지고 있는 사용 사례를 개발하고 있습니다. 이전에는 전력 값의 변화에 따라 그래프를 여러 워크로드 상태 로 수동으로 분할했습니다. 이제 JMP를 사용하여 이 분할 프로세스를 자동화하는 것을 목표로 합니다.
예상(수동으로 도출된) 결과를 보여주는 스크린샷과 함께 데이터를 첨부했습니다. 식별된 각 상태는 시작점과 종료점으로 정의되며, 이는 "시작/종료점" 열에 나열됩니다. 각 상태에 대해 실제 시작점과 종료점을 중심으로 ±5행의 버퍼가 적용됩니다.
고객과 대화한 후 몇 가지 중요한 설명:
1. 변화는 시간에 기반하지 않습니다.
2. 상태의 개수는 고정되어 있지 않습니다. 스크린샷에 표시된 것처럼 항상 11개가 되는 것은 아닙니다.
3. 수동 결과의 상태 7과 8은 2번째 Y축 변수를 사용하여 구별되었습니다.
계층적 클러스터링과 k-평균 클러스터링을 실험해 봤는데, 수작업 결과와 비슷한 결과가 나왔지만 정확히 일치하지는 않았습니다. JMP에서 이 세분화 프로세스를 더 효과적으로 자동화할 수 있는 방법이 있을까요?
Re: 전력 변화 데이터 분할처음에는 0을 제거한 다음 데이터를 평활화하고, 각 세그먼트의 지표로 미분값에서 스파이크를 찾는 것이 생각났습니다. 가능은 하지만 좀 "무차별 대입"하는 것 같습니다. 클러스터링이 더 "좋은" 해결책처럼 들리지만, 저는 클러스터링에 대한 경험이 많지 않습니다.
계층적 클러스터링을 사용하여 방법을 단일로, 데이터 형식을 데이터 스택으로, 그리고 비표준화로 설정하여 약간의 진전을 이룰 수 있었습니다. 제가 제대로 이해했다면, 시간과 전력 모두에서 서로 가까운 "이웃" 점들을 시간(X)과 전력(Y)을 갖는 2차원 공간의 점으로 간주하여 클러스터를 형성하는 것 같습니다. 다른 분이 이 부분을 설명해 주실 수 있을까요?
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: 전력 변화 데이터 분할다시 생각해 보니, "데이터가 쌓였습니다"라는 표현은 잘못된 것 같습니다. 하지만 "단일" + "표준화되지 않음"을 사용하면 제 경우에는 여전히 좋은 결과를 얻을 수 있습니다.