| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes #16539
The implicit 0-padding that is done to small entropy inputs to make them the
size of the internal pool conflicts with the spawn keys, which start with an
appended 0.
In order to maintain stream compatibility with unspawned `SeedSequence`s, we
explicitly 0-pad short inputs out to the pool size only if the spawn key is
provided, and thus would trigger the bug. This should minimize the impact on
users that were not encountering the bug.
|
|\
| |
| | |
DOC: Correct MV Normal sig
|
| |
| |
| |
| | |
Add new kw arg to sig
|
|\ \
| | |
| | | |
DOC: Minor rounding correction in Generator.binomial
|
| |/
| |
| | |
Changed 38.88 from 38 to 39
|
| |
| |
| |
| |
| | |
Fix for #16508. Cython wants every pointer declaration to be on a
separate line.
|
|/
|
|
|
|
|
| |
Broadcastable size with inputs does not produce an error when size produces
a smaller output array than the broadcast input shape. Patch checks that
the output shape matches the outer shape of the broadcast fo all inputs and
the size when given.
|
|
|
|
| |
This requires some minor tweaks in `np.random` because there the two have different meanings, with `()` meaning 0d array and `None` meaning scalar.
|
|
|
|
| |
Most compilers should optimize it, but it doesn't hurt to inline and has a better name
now.
|
|\
| |
| | |
DEP: Deprecate `numpy.dual`.
|
| |
| |
| |
| |
| |
| | |
Add a deprecation warning in the `numpy.dual` module, and
remove the use of `numpy.dual` from the few places where it
is used in the numpy code.
|
|\ \
| | |
| | | |
BUG: Correct loop order in MT19937 jump
|
| | |
| | |
| | |
| | | |
Fix indent on reference and remove text that may be incorrect.
|
| | |
| | |
| | |
| | | |
Clarify the method used and the source of the code
|
| | |
| | |
| | |
| | | |
Remove unused file containing the old polynomial representation.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Refactor polynomial to be unsigned long array
Remove unused code
Fix md5 calculation on BE
|
| | |
| | |
| | |
| | |
| | |
| | | |
Use the original loop order instead of an inverted order
closes #15394
|
|/ /
| |
| |
| |
| | |
Remove trailing colon
Fix indentation in RandomState choice doc string
|
|\ \
| | |
| | | |
BUG: add missing numpy/__init__.pxd to the wheel
|
| | | |
|
| |/
|/| |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#14924)
* Add stick-breaking
* Add tests demonstrating slowness for beta and dirichlet generators for small alpha (and beta) values
* Remove the test for beta with small `a` and `b`
* Switch from standard to stick-breaking method whenever alpha.max() < 0.1
Co-authored-by: Warren Weckesser <warren.weckesser@gmail.com>
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
Co-authored-by: Sebastian Berg <sebastian@sipsolutions.net>
|
| |
|
|
|
|
|
|
|
| |
Add repeatability tests for when the range of the integers is `2**32`
(and `2**32 +/- 1` for good measure) with broadcasting. The underlying
functions called by Generator.integers and random.randint when the
inputs are broadcast are different than when the inputs are scalars.
|
|
|
|
|
| |
Assert that an invalid value (2**n-1 for n = 8, 16, 32, 64) has not
been passed to the Lemire function.
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the input to Generator.integers was 2**32, the value 2**32-1
was being passed as the `rng` argument to the 32-bit Lemire method,
but that method requires `rng` be strictly less then 2**32-1.
The fix was to handle 2**32-1 by calling next_uint32 directly.
This also works for the legacy code without changing the stream
of random integers from `randint`.
Closes gh-16066.
|
|
|
|
| |
Addresses a comment on gh-10835.
|
| |
|
|
|
|
|
| |
Only one dimensional alpha paramter is currently supported, but higher dimensions were silently allowed and gave an incorrect results. This fixes the regression. In the future, the API could be extended to allow higher dimensional arrays for alpha.
Fixes gh-15915
|
|\
| |
| | |
BUG: Check that `pvals` is 1D in `_generator.multinomial`.
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
`ValueError` about negative dimension was lowercased.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make `Generator.negative_binomial` raise a ValueError if p=0.
`negative_binomial(n, p)` draws samples from the distribution of
the number of failures until n successes are encountered. If p is 0,
then a success is never encountered, so the probability distribution
is 0 for any finite number of failures. In other words, it is not
really a meaningful distribution, so we disallow p=0.
Closes gh-15913.
|
|/
|
|
| |
Fixes #15871
|
|
|
|
|
| |
types (#15816)
Cleanup from the dropping of python 2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(gh-15463)
xref gh-14778
As pointed out in the comment by @jamesthomasgriffin, we did not include a pxd file to expose the distribution functions documented in the random c-api. This PR adds a c_distributions.pxd file that exposes them.
Squashed commits:
* BUG: add missing c_distributions.pxd to enable cython use of random C-API
* ENH, TST: add npyrandom library like npymath, test cython use of it
* BUG: actually prefix f-string with f
* MAINT: fixes from review, add _bit_generato_bit_generator.pxd
* STY: fixes from review
* BLD: don't use nprandom library for mtrand legacy build
* TST: WindowsPath cannot be used in subprocess's list2cmdline
* MAINT, API: move _bit_generator to bit_generator
* DOC: add release note about moving bit_generator
* DOC, MAINT: fixes from review
* MAINT: redo dtype determination from review
|
|
|
|
| |
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
| |
|
| |
|
|\
| |
| | |
MAINT: cleanup unused imports; avoid redefinition of imports
|
| |
| |
| |
| |
| |
| |
| | |
* Cleanup unused imports (F401) of mostly standard Python modules,
or some internal but unlikely referenced modules
* Where internal imports are potentially used, mark with noqa
* Avoid redefinition of imports (F811)
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
slow calls to np.dtype.name replaced with np.dtype,
mtrand.pyx and _generator.pyx updated,
test test_warns_byteorder updated
before:
%timeit rs.random(): 520 ns ± 33.1 ns per loop
%timeit rg.random(): 6.36 µs ± 222 ns per loop
after:
%timeit rs.random(): 453 ns ± 6.95 ns per loop
%timeit rg.random(): 594 ns ± 9.66 ns per loop
|
|
|
|
| |
Move flag to parameters
|
|
|
|
|
|
| |
* PEP 8: "Imports should usually be on separate lines"
* Where modified, sort imported modules alphabetically
* Clean-up unused imports from these expanded lines
|