flopscope.numpy.random.RandomState.randint
fnp.random.RandomState.randint(self, low, high=None, size=None, dtype=<class 'int'>)
Return random integers from `low` (inclusive) to `high` (exclusive).
Adapted from NumPy docs np.random.RandomState.randint
Legacy integer sampler; cost = numel(output).
Return random integers from low (inclusive) to high (exclusive).
Return random integers from the "discrete uniform" distribution of
the specified dtype in the "half-open" interval [low, high). If
high is None (the default), then results are from [0, low).
New code should use the integers method of a Generator instance instead; please see the random-quick-start.
Parameters
- low:int or array-like of ints
Lowest (signed) integers to be drawn from the distribution (unless
high=None, in which case this parameter is one above the highest such integer).- high:int or array-like of ints, optional
If provided, one above the largest (signed) integer to be drawn from the distribution (see above for behavior if
high=None). If array-like, must contain integer values- size:int or tuple of ints, optional
Output shape. If the given shape is, e.g.,
(m, n, k), thenm * n * ksamples are drawn. Default is None, in which case a single value is returned.- dtype:dtype, optional
Desired dtype of the result. Byteorder must be native. The default value is long.
Warning.This function defaults to the C-long dtype, which is 32bit on windows and otherwise 64bit on 64bit platforms (and 32bit on 32bit ones). Since NumPy 2.0, NumPy's default integer is 32bit on 32bit platforms and 64bit on 64bit platforms. Which corresponds to flops.intp. (
dtype=intis not the same as in most NumPy functions.)
Returns
See also
- random_integers similar to
randint, only for the closed interval [low,high], and 1 is the lowest value ifhighis omitted. - we.flops.random.Generator.integers which should be used for new code.
Examples
>>> flops.random.randint(2, size=10)
array([1, 0, 0, 0, 1, 1, 0, 0, 1, 0]) # random
>>> flops.random.randint(1, size=10)
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])Generate a 2 x 4 array of ints between 0 and 4, inclusive:
>>> flops.random.randint(5, size=(2, 4))
array([[4, 0, 2, 1], # random
[3, 2, 2, 0]])Generate a 1 x 3 array with 3 different upper bounds
>>> flops.random.randint(1, [3, 5, 10])
array([2, 2, 9]) # randomGenerate a 1 by 3 array with 3 different lower bounds
>>> flops.random.randint([1, 5, 7], 10)
array([9, 8, 7]) # randomGenerate a 2 by 4 array using broadcasting with dtype of uint8
>>> flops.random.randint([1, 3, 5, 7], [[10], [20]], dtype=flops.uint8)
array([[ 8, 6, 9, 7], # random
[ 1, 16, 9, 12]], dtype=uint8)