변경점 분석을위한 Python 모듈


24

시계열에서 변경점 분석을 수행하는 Python 모듈을 찾고 있습니다. 여러 가지 알고리즘이 있으며 각 알고리즘을 수동으로 롤링하지 않고도 일부 알고리즘의 효능을 탐색하고 싶습니다.

이상적으로는 bcp (Bayesian Change Point) 또는 R의 strucchange 패키지 와 같은 일부 모듈을 원합니다. Scipy 에서 일부를 찾을 것으로 예상했지만 아무것도 만들 수 없었습니다.

다음 시설에 시설이없는 것이 놀랍습니다.

파이썬에서 변경점 감지 알고리즘이있는 모듈이 있습니까?


또한 파이썬에서 변경점 분석을 찾고 있습니다. 유용한 정보를 찾았습니까 (예 : RPy 사용)?
Jack Kelly

SPAMS spams-devel.gforge.inria.fr 에서 융합 올가미를 사용하십시오 (파이썬 바인딩이 있음).
Vladislavs Dovgalecs

누구든지 지금까지 좋은 변경점 분석 라이브러리를 찾았습니다 (이진 세그먼트 화, 세그먼트 이웃과 같은 다양한 알고리즘 구현)?
Maha

온라인 시계열 데이터의 경우, Changefinder 가 어떻게 확장 점을 변경할 수 있다고 Change-Point Detection 구현이 이루어 집니까 ? 이것은 나에게 내재 된 문제인 것 같습니다.
HoofarLotusX

답변:


7

PyPI 에서 체인저 파인더 라이브러리를 사용해 볼 수 있습니다 . 설명에 따르면 ChangeFinder 알고리즘을 기반으로하는 온라인 변경 감지 라이브러리라고합니다.

Github 리포지토리 에서 자습서 형식으로 사용 가능한 Michele Basseville의 통계 변경점 감지 기술에 대한 Python 구현도 있습니다 .


3
Github 저장소 에서 Bayesian Change Point Detection의 Python 구현도 찾을 수 있습니다 .
kushan_s

1
답변의 첫 번째 링크 (amanahuja)가 불완전한 것 같습니다. 당신이 의견에 게시 한 다른 하나는 유용합니다!
okkhoy

6

고급 통계 패키지를 사용하기 위해 Python 라이브러리에는 여전히 약간의 차이가 있습니다. RPy 모듈을 사용해 보셨습니까? RPy를 사용하면 R 모듈을로드 할 수 있습니다.

RPy에 대한 간단한 자습서 : http://www.sciprogblog.com/2012/08/using-r-from-within-python.html strucchange


2
이것은 여전히 ​​그렇습니까? 여전히 R-Python 브리지를 사용해야합니까?
Maha

누구든지 지금까지 좋은 변경점 분석 라이브러리를 찾았습니다 (이진 세그먼트 화, 세그먼트 이웃과 같은 다양한 알고리즘 구현)?
Maha

4

이 파이썬 패키지 rpy2의 구현은 저에게 효과적이었습니다.

import numpy as np
from rpy2.robjects.packages import importr
import rpy2.robjects as robjects

r = robjects.r #allows access to r object with r.

bcp = importr('bcp') #import bayesian change point package in python

values = bcp.bcp( r.c( r.rnorm(50) , r.rnorm(50,5,1), r.rnorm(50) ) ) #use bcp function on vector

posterior_means = np.array(values[5]).flatten()
posterior_probability = np.array(values[7]).flatten()

그런 다음 원래 벡터에 대해 사후 평균 및 사후 확률을 플로팅 할 수 있습니다. 이 예제에 대한 자세한 정보는 R의 bcp 함수 예제를 참조하십시오.

또한 숫자가있는 하드 인덱싱 값 (즉, 값 [5])은 이상적이지 않지만 rx 및 rx2 추출기를 사용하여 어려움을 겪고있었습니다. 그래서 누군가 덜 덜 해킹 추출 방법을 가르쳐 줄 수 있다면 알고 싶습니다!



0

ChangeFinder 라이브러리를 사용해 보았 으면 다음과 같이 Linux에 설치할 수 있습니다.

pip install changefinder

Bayesian_changepoint_detection GitHub 코드는 여기에서 찾을 수 있습니다 : GitHub 코드

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.