NumPy - random.choice() function
The NumPy random.choice() function generates a random sample from a given 1-D array and returns it.
Syntax
numpy.random.choice(a, size=None, replace=True, p=None)
Parameters
a |
Required. Specify an ndarray, a random sample is generated from its elements. If an int, the random sample is generated as if a were np.arange(a). |
size |
Optional. Specify output shape. If the given shape is, e.g., (m, n, k), then m * n * k samples are drawn. Default is None, in which case a single value is returned. |
replace |
Optional. A boolean to specify whether the sample is with or without replacement. |
p |
Optional. Specify probabilities associated with each entry in a. If not given the sample assumes a uniform distribution over all entries in a. |
Return Value
Returns the generated random samples.
Example:
In the example below, random.choice() function is used to generate random samples drawn from given list.
import numpy as np MyList = [10, 20, 30, 40, 50, 60, 70, 80] x = np.random.choice(MyList, (3,3)) #printing x print(x)
The output of the above code will be:
[[60 80 60] [70 10 60] [50 20 60]]
Example:
The replace parameter can be used to draw sample with replacement as shown in the example below.
import numpy as np MyList = [10, 20, 30, 40, 50, 60, 70, 80] x = np.random.choice(MyList, (3,3), True) #printing x print(x)
The output of the above code will be:
[[20 30 40] [40 30 80] [80 40 50]]
Example:
Using p parameter, we can assign probability with each entry of the input array or sequence.
import numpy as np MyList = [10, 20, 30, 40, 50, 60] prob = [0.5, 0.1, 0.1, 0.1 , 0.1, 0.1] x = np.random.choice(MyList, (3,3), True, prob) #printing x print(x)
The output of the above code will be:
[[10 10 50] [10 10 60] [60 10 10]]
❮ NumPy - Random