Utility library for detecting and removing outliers from normally distributed datasets
Utility library for detecting and removing outliers from normally distributed datasets using the Smirnov-Grubbs test.
Both the two-sided and the one-sided version of the test are supported. The former allows extracting outliers from both ends of the dataset, whereas the latter only considers min/max outliers. When running a test, every outlier will be removed until none can be found in the dataset. The output of the test is flexible enough to match several use cases. By default, the outlier-free data will be returned, but the test can also return the outliers themselves or their indices in the original dataset.
- Two-sided Grubbs test with a Pandas series input
>>> from outliers import smirnov_grubbs as grubbs >>> import pandas as pd >>> data = pd.Series([1, 8, 9, 10, 9]) >>> grubbs.test(data, alpha=0.05) 1 8 2 9 3 10 4 9 dtype: int64
- Two-sided Grubbs test with a NumPy array input
>>> import numpy as np >>> data = np.array([1, 8, 9, 10, 9]) >>> grubbs.test(data, alpha=0.05) array([ 8, 9, 10, 9])
- One-sided (min) test returning outlier indices
>>> grubbs.min_test_indices([8, 9, 10, 1, 9], alpha=0.05) 
- One-sided (max) tests returning outliers
>>> grubbs.max_test_outliers([8, 9, 10, 1, 9], alpha=0.05)  >>> grubbs.max_test_outliers([8, 9, 10, 50, 9], alpha=0.05) 
This software is licensed under the MIT License.
Thanks to @lukius .
- Support for one-sided (min/max) tests.
- Test output is now more flexible: the user can run the test in order to find the outliers themselves or the indices of the outliers, and not just the outlier-free data.
- Test suite was enhanced.
- README was extended and improved.
- Japanese comments were translated to English so as to reach a greater audience.
Publish to pypi
Create this project.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for outlier_utils-0.0.3-py3-none-any.whl
Hashes for outlier_utils-0.0.3-py2-none-any.whl