Metadata-Version: 2.1
Name: mosum
Version: 0.2.0
Summary: Moving Sum Based Procedures for Changes in the Mean
License: MIT
Author: Dom Owens
Author-email: dom.owens@bristol.ac.uk
Requires-Python: >=3.9,<3.10
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: matplotlib (>=3.6.3,<4.0.0)
Requires-Dist: numba (>=0.53,<0.54)
Requires-Dist: numpy (>=1.23.5,<1.24)
Requires-Dist: pandas (>=1.5.3,<2.0.0)
Description-Content-Type: text/markdown

# mosum.py: Moving Sum Based Procedures for Changes in the Mean

A python port of the R package mosum <https://CRAN.R-project.org/package=mosum>.
Implementations of MOSUM-based statistical procedures and algorithms for detecting multiple changes in the mean. 
This comprises the MOSUM procedure for estimating multiple mean changes from Eichinger and Kirch (2018) <doi:10.3150/16-BEJ887> 
and the multiscale algorithmic extension from Cho and Kirch (2022) <doi:10.1007/s10463-021-00811-5>, 
as well as the bootstrap procedure for generating confidence intervals about the locations of change points as proposed in Cho and Kirch (2022) <doi:10.1016/j.csda.2022.107552>. 
See also Meier, Kirch and Cho (2021) <doi:10.18637/jss.v097.i08> which accompanies the R package.

## Installation

```bash
$ pip install mosum
```

## Usage

mosum.py can be used as follows to detect changes in the mean of a time series

```python
import mosum
#   simulate data
xx = mosum.testData("blocks")["x"]
# detect changes
xx_m  = mosum.mosum(xx, G = 50, criterion = "eta", boundary_extension = True)
# summary and print methods
xx_m.summary()
xx_m.print()
# plot the output
xx_m.plot(display="mosum")
from matplotlib import pyplot as plt
plt.show()
```

## License

mosum.py was created by Dom Owens, based on the R package "mosum", originally by Alexander Meier, Haeran Cho, and Claudia Kirch.
It is licensed under the terms of the MIT license.
