This module takes a date time series and returns: (a) the underlaying linear trend and (b) the times where there is a change in the trend
Project description
ChangePointDetector
This module returns change points in a date time series, using Kalman filters and EVT as described in https://www.robots.ox.ac.uk/~sjrob/Pubs/LeeRoberts_EVT.pdf
- from ChangePointDetector import ChangePointDetector
- Prepare your time series as data plus Panda dates
- Create the necessary Kalman representation by creating a "session" object by calling the ChangePoint class, e.g.:
Session=ChangePointDetector.ChangePointDetectorSession(data,dates).
- 'SeasonalityPeriods' is an optional input, e.g if your data is sequential months, 12 = calendar month seasonality
- 'ForecastPeriods' is another optional input, indicating how many periods to forecast. Default = 3
- Determine the changepoints by running the ChangePointDetectorFunction on your "session", e.g. Results=Session.ChangePointDetectorFunction()
This will return a "Results" object that contains the following:
- ChangePoints. This is a list of 0s and 1s the length of the data, where 1s represent changepoints
- Prediction. This is the Kalman smoothed actuals, plus a 3 period forecast. Note no forecast will be made if there is a changepoint in the last 3 dates
- PredictionVariance. Variance of the smoothed actuals and forecast
- ExtendedDates. These are the original dates plus 3 exta for the forecast (if a forecast has been made)
- Trend. This is the linear change factor
- TrendVariance. Variance of the trend
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for ChangePointDetectorEVT-0.0.18.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 075d5d487fcd7801d4a6d0e3c5afad2c2731696b448428dc71e67cdec2dac267 |
|
MD5 | 80e2728c86a5beafb0083cc092c5cf34 |
|
BLAKE2b-256 | 1afdd1cbdda9b01a4cdc1f69df8936add62f6792076171ec8e7174e9fe77fd80 |
Close
Hashes for ChangePointDetectorEVT-0.0.18-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7112f1eaef8c99d6ead73862b0b341dc26a95d6de4cc31a876fb3627041ae700 |
|
MD5 | 139ac4087c022593b3f93df2e0f15cb7 |
|
BLAKE2b-256 | 562d3c78f0dac3e42016afcad86d4b56eac9aaf1984e52debd96b54162d40c3e |