Bootstrap confidence interval estimation routines for Numpy/Scipy/Pandas
Project description
scikits-bootstrap
Scikits.bootstrap provides bootstrap confidence interval algorithms for Numpy/Scipy/Pandas. It originally required scipy, but no longer needs it.
It also provides an algorithm which estimates the probability that the statistics lies satisfies some criteria, e.g. lies in some interval.
At present, it is rather feature-incomplete and in flux. However, the functions that have been written should be relatively stable as far as results.
Much of the code has been written based off the descriptions from Efron and Tibshirani's Introduction to the Bootstrap, and results should match the results obtained from following those explanations. However, the current ABC code is based off of the modified-BSD-licensed R port of the Efron bootstrap code, as I do not believe I currently have a sufficient understanding of the ABC method to write the code independently.
In any case, please contact me (Constantine Evans cevans@evanslabs.org) with any questions or suggestions. I'm trying to add documentation, and will be adding tests as well. I'm especially interested, however, in how the API should actually look; please let me know if you think the package should be organized differently.
The package is licensed under the BSD 3-Clause License. It is supported in part by the Evans Foundation.
Version Info
-
v1.1.0-pre.1: Randomness is now generated via a numpy.random Generator. Anything that relied on using numpy.random.seed to obtain deterministic results will fail (mostly of relevance for testing). Seeds (or Generators) can now be passed to relevant functions with the
seed
argument, but note that changes in Numpy's random number generation means this will not give the same results that would be obtained usingnumpy.random.seed
to set the seed in previous versions.There is a new pval function, and there are several bugfixes.
Numba is now supported in some instances (np.average or np.mean as statfunction, 1-D data), using use_numba=True. Pypy3 is also supported. Typing information has been added.
Handling of multiple data sets (tuples/etc of arrays) now can be specified as multi="paired" (the previous handling), where the sets must be of the same length, and samples are taken keeping corresponding points connected, or multi="independent", treating data sets as independent and sampling them seperately (in which case they may be different sizes).
-
v1.0.1: Licensing information added.
-
v1.0.0: scikits.bootstrap now uses pyerf, which means that it doesn't actually need scipy at all. It should work with PyPy, has some improved error and warning messages, and should be a bit faster in many cases. The old ci_abc function has been removed: use method='abc' instead.
-
v0.3.3: Bug fixes. Warnings have been cleaned up, and are implemented for BCa when all statistic values are equal (a common confusion in prior versions). Related numpy warnings are now suppressed. Some tests on Python 2 were fixed, and the PyPI website link is now correct.
-
v0.3.2: This version contains various fixes to allow compatibility with Python 3.3. While I have not used the package extensively with Python 3, all tests now pass, and importing works properly. The compatibility changes slightly modify the output of bootstrap_indexes, from a Python list to a Numpy array that can be iterated over in the same manner. This should only be important in extremely unusual situations.
Installation and Usage
scikits.bootstrap is tested on Python 3.6 - 3.9, and PyPy 3. The package can be installed using pip.
pip install scikits.bootstrap
Usage example for python 3.x:
import scikits.bootstrap as boot
import numpy as np
boot.ci(np.random.rand(100), np.average)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for scikits.bootstrap-1.1.0rc1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46582e24b042133bb6762471f8ebe132f96c13bce9f099f51aadf4d889a0a039 |
|
MD5 | addf914ca942deefd99bbbe45cab212b |
|
BLAKE2b-256 | 2acb64f0b94ec31f5122539497d20c9c539d1b704f7730e3cf415fd197501bcb |
Hashes for scikits.bootstrap-1.1.0rc1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9888a7df087830370374cbcaec529df6cab24d0f2aa1ca5d8d50ea1bed03f906 |
|
MD5 | 2e16c094bd7b3fa410f1913189f65518 |
|
BLAKE2b-256 | 6daa97ad286486cbb04bc12740b45cccea77383d1265bafdb2f9ffcf80e4d3f6 |