| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Closes gh-22100
|
|
|
|
|
|
|
| |
- Replace "Python.h" by <Python.h>
- Replace "structmember.h" by <structmember.h>
- Replace <npy_config> by "npy_config"
- Define PY_SSIZE_T_CLEAN before all Python.h includes in .c files.
|
|
|
|
| |
Use exponentials rather than generating exponentials via inversion
|
|
|
|
|
|
|
| |
Use log1p(-x) instead of log(1 - x)
Seperate legacy version from current
closes #17020
|
|
|
|
|
|
| |
Avoid conditional compilation and move old version to legacy_vonmises
Small clean up
Additional comments
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* API: restructure and document numpy.random C-API
* DOC: fix bad reference
* API: ship, document, and start to test numpy.random C-API examples
* API, DOC, TST: fix tests, refactor documentation to include snippets
* BUILD: move public headers to numpy/core/include/numpy/random
* TST: ignore DeprecationWarnings in setuptools and numba
* DOC: document the C-API as used from Cython
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new method
multivariate_hypergeometric(self, object colors, object nsample,
size=None, method='marginals')
of the class numpy.random.Generator implements the multivariate
hypergeometric distribution; see
https://en.wikipedia.org/wiki/Hypergeometric_distribution,
specifically the section "Multivariate hypergeometric distribution".
Two algorithms are implemented. The user selects which algorithm
to use with the `method` parameter. The default, `method='marginals'`,
is based on repeated calls of the univariate hypergeometric
distribution function. The other algorithm, selected with
`method='count'`, is a brute-force method that allocates an
internal array of length ``sum(colors)``. It should only be used
when that value is small, but it can be much faster than the
"marginals" algorithm in that case.
The C implementations of the two methods are in the files
random_mvhg_count.c and random_mvhg_marginals.c in
numpy/random/src/distributions.
|
| |
|
| |
|
|
|