matrix-profile-foundation / matrixprofile

A Python 3 library making time series data mining tasks, utilizing matrix profile algorithms, accessible to everyone.
https://matrixprofile.org
Apache License 2.0
360 stars 62 forks source link

Develop #53

Closed kavj closed 3 years ago

kavj commented 3 years ago

This needs more cleanup and merging, but this represents what I had in mind for streaming operations. For simplicity, this maintains a consistent view of a time series at any given time, regardless of whether all arrays can be populated or any comparisons can be made.

I included a buffering class to help facilitate this. Its reference interface is provided as an abstract base class. This requires a small amount of care in that anytime you add data, you must assume that existing iterators may be clobbered. Other than that, it simplifies the required slicing considerably.

This may still have minor issues left. It includes the formula updates. The version provided deals with a single time series. Cross comparisons use the same formula. I'll need to add an mpx_cross_inner and some interface for it.