A red-black tree implemented key-value database

pip install cs207rbtree==1.0.3



We implemented 3 time series interfaces along with 3 kinds of time series classes.



This is the ABC for all subclasses we implemented. It contains 3 abstract methods which are __iter__, __str__, and __repr__. We put __iter__ here because we want all time series subclasses to support at least one kind of iterations.


Inherited from TimeSeriesInterface, this interface is the base class for TimeSeries class and ArrayTimeSeries class. It has a large amount of methods, both abstract and non-abstract, that we consider important for a sized container-typed time series class. We want its subcalsses to support common sequence operations such as __getitem__, __setitem__, __len__ etc, and also some element-wise arithmetic operations such as addition, substraction and multiplication.


TimeSeries Class

Inherited from SizedContainerTimeSeriesInterface, this class implements most methods in its base class. It uses lists as its underlying storage. See class documentation for more details.

ArrayTimeSeries Class

Almost the same as TimeSeries class, except that it uses numpy array rather than list as its underlying storage.

SimulatedTimeSeries Class

Inherited from StreamTimeSeriesInterface, this class has no underlying storage. Rather, it takes into a generator and produces time series data on demand.

The class supports online mean and standard deviation calculation. See class documentation and examples for more details.

Build Status

Coverage Status