Cross-sectional and time-series data imputation algorithms
Project description
Impyute
Impyute is a library of missing data imputation algorithms. This library was designed to be super lightweight, here’s a sneak peak at what impyute can do.
>>> n = 5 >>> arr = np.random.uniform(high=6, size=(n, n)) >>> for _ in range(3): >>> arr[np.random.randint(n), np.random.randint(n)] = np.nan >>> print(arr) array([[0.25288643, 1.8149261 , 4.79943748, 0.54464834, np.nan], [4.44798362, 0.93518716, 3.24430922, 2.50915032, 5.75956805], [0.79802036, np.nan, 0.51729349, 5.06533123, 3.70669172], [1.30848217, 2.08386584, 2.29894541, np.nan, 3.38661392], [2.70989501, 3.13116687, 0.25851597, 4.24064355, 1.99607231]]) >>> import impyute as impy >>> print(impy.mean(arr)) array([[0.25288643, 1.8149261 , 4.79943748, 0.54464834, 3.7122365], [4.44798362, 0.93518716, 3.24430922, 2.50915032, 5.75956805], [0.79802036, 1.99128649, 0.51729349, 5.06533123, 3.70669172], [1.30848217, 2.08386584, 2.29894541, 3.08994336, 3.38661392], [2.70989501, 3.13116687, 0.25851597, 4.24064355, 1.99607231]])
Feature Support
- Imputation of Cross Sectional Data
- K-Nearest Neighbours
- Multivariate Imputation by Chained Equations
- Expectation Maximization
- Mean Imputation
- Mode Imputation
- Median Imputation
- Random Imputation
- Imputation of Time Series Data
- Last Observation Carried Forward
- Moving Window
- Autoregressive Integrated Moving Average (WIP)
- Diagnostic Tools
- Loggers
- Distribution of Null Values
- Comparison of imputations
- Little’s MCAR Test (WIP)
Versions
Currently tested on 2.7, 3.4, 3.5, 3.6 and 3.7
Installation
To install impyute, run the following:
$ pip install impyute
Or to get the most current version:
$ git clone https://github.com/eltonlaw/impyute
$ cd impyute
$ python setup.py install
Documentation
Documentation is available here: http://impyute.readthedocs.io/
How to Contribute
Check out CONTRIBUTING
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size impyute-0.0.8-py2.py3-none-any.whl (31.7 kB) | File type Wheel | Python version py2.py3 | Upload date | Hashes View |
Filename, size impyute-0.0.8.tar.gz (18.4 kB) | File type Source | Python version None | Upload date | Hashes View |
Close
Hashes for impyute-0.0.8-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 928060ef7cc216679353bff97822dab0a0b611ab2527805ce1ffb31f7aa7bbb2 |
|
MD5 | 2709f37495d19879a898fc3a0bdaaaa6 |
|
BLAKE2-256 | 372886829f67c9affb847facaab94687761d3555539ec675f7577778c5b2680a |