np.random.choice() in NumPy Python

In this blog, we will tell our users about one of the most important functions of the NumPy library. The name of this function is np.random.choice. This function is the part of the NumPy library which is mainly responsible for the computation of the values and datasets. Let’s learn more about this function through this dataset. 

 

 

 

np.random.choice()

 

This function is useful to generate a random array of one dimension in a python programming language. The parameters in this function are the size of the array that we need. Other parameters are the range of the values in which we want the numbers. 

 

 

np.random.choice( a, size=None, replace=True, p=None )

 

 

Parameters:

a: int or 1-D array-like 

 

 

size: Optional ( int or tuple of ints )

 

 

replace: Optional ( Boolean )

 

 

p: Optional ( 1-D array-like )

 

 

Returns:

samples: ndarray or single item

 

 

This function will return a single item or an n-dimension array as the output. In case of invalid input, it creates a value error. 

 

 

If p is not a vector of probabilities, if a is an array-like of size 0, if a is an int less than zero, if a or p is not 1-dimensional, if a or p has different lengths, or if replace=False and the sample size is more than the population size. Here p represents the probability of each value to be present in the array.

 

 

Example 1, here we are generating a uniform random sample of size 3 and range from 0 to 10:

import numpy as np
array = np.random.choice(10, 3)
print(array)

 

Output

 

 

 

Example 2, here we are generating a non-uniform sample of size 5 and ranging from 0 to 10. And keep in mind in list the sum of the elements should be equal to 1.

import numpy as np 
array = np.random.choice(10,5,p=[0.1, 0, 0.3, 0, 0, 0.2, 0.1, 0.2, 0, 0.1]) 
print(array)

 

Output

 

 

Example 3, here we are generating uniform samples of size 5 and ranging from 0 to 10 without replacement.

import numpy as np 
array = np.random.choice(10, 5, replace=False) 
print(array)

 

Output

 

 

Example 4, here we are generating a non-uniform sample of size 5 and ranging from 0 to 10 without replacement.

import numpy as np 
array = np.random.choice(10, 5, replace=False, p=[0.1, 0, 0.3, 0, 0, 0.2, 0.1, 0.2,0,0.1]) 
print(array)

 

Output

 

 

 

 

Also Read: Python Entanglement Entropy

 

Share this post

Leave a Reply

Your email address will not be published. Required fields are marked *