2017-12-21 9 views
0

나는 250 개의 시계열을 가지고 있는데 어느 시계열에 어느 정도 동일한 동작이 나타나는지 클러스터링하려고합니다. 하지만 내 문제는, 내가 Google과 StackOverFlow에서 검색 한 내용이 모두 내 시간 시리즈를 병합해야하는지 여부를 알려주는 예제를 찾을 수 없다는 것입니다. 또는 그들을 분리 된 변수로 유지하는 것이 가능합니까? 입력에 대한 설명이 도움이 될 것입니다.클러스터링 알고리즘에 대한 입력

  • 내가 파이썬 3.6 및 클러스터링을위한 프로그래밍하고, 나는 공상 과학 키트 내 시계열의 각이 한 열
+1

[this] (https://stackoverflow.com/questions/32106092/clustering-uni-variate-time-series-using-sklearn) 도움이 될까요? – user32185

+1

구글 tensorflow timeseries 분류하려고 – user32185

답변

1

SciKit의 클러스터링의 입력 형식의 팬더 dataframe입니다 라이브러리에게

  • 를 배우고 사용 방법은 방법에 따라 다릅니다. 메소드의 이름을 the list of Classes에 클릭하고 클래스의 fit 메소드 설명 아래로 스크롤하십시오. 이것은 클러스터링을 수행하는 것입니다. 대부분의 방법 (예 : K-means)의 경우 데이터는 2D 모양 배열 (n_samples, n_features) 형태 여야합니다. 당신을 위해, 샘플의 수는 250이고 피처의 수는 시계열의 길이입니다 (모두 똑같은 길이 여야 함).

    그러나 모든 값이 시간 매개 변수의 아이디어를 잃어 버리는 별개의 기능으로 처리되므로 입력으로 2D 배열을 사용하는 것에 대해서는주의해야합니다. 한 시리즈가 다른 시리즈로 바뀌면 완전히 다른 것으로 취급 될 수 있습니다.

    일부 SciKit 클러스터링 방법을 사용하면 250 x 250 거리 매트릭스 (서로 다른 두 시리즈의 측정 방법) 또는 선호도/유사 매트릭스 (사전 측정 방법과 유사 함)를 미리 계산할 수 있습니다. 이는 실제 데이터 대신 전달 될 수 있습니다. 행렬은 이중 루프에서 계산 될 수 있으며, 250 x 250은 그렇게 나쁘지 않습니다. 이 대신 원본 데이터의 정사각형 행렬을 취할 수있는 방법은 다음과 같습니다 컴퓨팅에 사용되는

    내가 time-series similarity measures에 대한 몇 가지 조사를 (하고 제안하는 정사각 행렬)로 변환한다.