https://github.com/carlosqsilva/pyspc
Statistical Process Control Charts Library for Humans
https://github.com/carlosqsilva/pyspc
control-chart python spc
Last synced: about 1 year ago
JSON representation
Statistical Process Control Charts Library for Humans
- Host: GitHub
- URL: https://github.com/carlosqsilva/pyspc
- Owner: carlosqsilva
- License: gpl-3.0
- Created: 2016-06-25T20:11:56.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2023-01-12T02:48:30.000Z (over 3 years ago)
- Last Synced: 2025-03-28T06:05:17.106Z (about 1 year ago)
- Topics: control-chart, python, spc
- Language: Python
- Homepage:
- Size: 336 KB
- Stars: 214
- Watchers: 18
- Forks: 75
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PySpc
[](https://badge.fury.io/py/pyspc)
Statistical Process Control Charts Library for Humans
PySpc is a Python library aimed to make Statistical Process Control Charts as easy as possible.
Take a look at my other project [cchart-online](https://carlosqsilva.github.io/ccharts-online/).
## Features
Control Charts by Variables
* Mean and Amplitude
* Mean and Standard Deviation
* Individual Values and Moving Range
* Individual values with subgroups
* Exponentially Weighted Moving Average (EWMA)
* Cumulative Sum (CUSUM)
Control Charts by Attributes
* P Chart
* NP Chart
* C Chart
* U Chart
Multivariate Control Charts
* T Square Hotelling
* T Square Hotelling with SubGroup
* Multivariate Exponentially Weighted Moving Average (MEWMA)
##Installation
```bash
$ pip install pyspc
```
## Usage
```python
from pyspc import *
a = spc(pistonrings) + ewma()
print(a)
```

adding rules highlighting...
```python
a + rules()
```

adding more control charts to the mix...
```python
a + cusum() + xbar_sbar() + sbar()
```

it comes with 18 sample datasets to play with, available in **./pyspc/sampledata**, you can use your own data (of course). Your data can be nested lists, numpy array or pandas DataFrame.
```python
import numpy
from pyspc import *
fake_data = numpy.random.randn(30, 5) + 100
a = spc(fake_data) + xbar_rbar() + rbar() + rules()
print(a)
```

## Gtk Gui
Its also available a python gui application for those who do not like to mess with code.
```bash
$ python3 pyspc_gui.py
```
