In the context of this exercise, how does
np.mean() give us the probability?
np.mean() function is generally used to get the average of all values in a dataset. We can apply this function with a logical statement to get the percent of values that satisfy the logical statement.
In the exercise example, we have
np.mean(a==4). First, this will evaluate the conditional,
a==4, which will return a list of
False values. Then it will run
np.mean() on that list of
False values. When running
np.mean() on a list of
True = 1, False = 0 during the calculation.
True values count as
1, this is like counting how many elements satisfy the logical statement, and the calculation is essentially:
(Number elements satisfying condition) / (Number total elements)
# a = [4, 3, 1, ..., 4] np.mean(a==4) = np.mean([True, False, False, ..., True]) # In Numpy functions, # True counts as 1 # False counts as 0 # This is then equivalent to calculating np.mean([1, 0, 0, ..., 1]) # Example: # There are 10000 total elements # 5000 elements equal to 4 np.mean(a==4) = 5000 / 10000 = 0.5 or 50% probability