Open In App

How to choose elements from the list with different probability using NumPy?

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

We will see How to use numpy.random.choice() method to choose elements from the list with different probability.

Syntax: numpy.random.choice(a, size=None, replace=True, p=None)

Output: Return the numpy array of random samples.

Note: parameter p is probabilities associated with each entry in a(1d-array). If not given the sample assumes a uniform distribution over all entries in a.

Now, let’s see the examples:

Example 1:

Python3




# import numpy library
import numpy as np
  
# create a list
num_list = [10, 20, 30, 40, 50]
  
# uniformly select any element
# from the list
number = np.random.choice(num_list)
  
print(number)


Output:

50

Example 2:

Python3




# import numpy library
import numpy as np
  
# create a list
num_list = [10, 20, 30, 40, 50]
  
# choose index number-3rd element
# with 100% probability and other
# elements probability set to 0
# using p parameter of the
# choice() method so only
# 3rd index element selected
# every time in the list size of 3.
number_list = np.random.choice(num_list, 3,
                          p = [0, 0, 0, 1, 0])
  
print(number_list)


Output:

[40 40 40]

In the above example, we want only to select the 3rd index element from the given list every time.

Example 3:

Python3




# import numpy library
import numpy as np
  
# create a list
num_list = [10, 20, 30, 40, 50]
  
  
# choose index number 2nd & 3rd element
# with  50%-50% probability and other
# elements probability set to 0
# using p parameter of the
# choice() method so 2nd & 
# 3rd index elements selected
# every time in the list size of 3.
number_list = np.random.choice(num_list, 3,
                          p = [0, 0, 0.5, 0.5, 0])
  
print(number_list)


Output:

[30 40 30]

In the above example, we want to select 2nd & 3rd index elements from the given list every time.



Last Updated : 01 Oct, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads