Comparing Theoretical and Empirical Probabilities¶
In the first section we introduced the concept of empirical probability as the relative frecuency of a given outcome.
Now that we know how to calculate some theoretical probabilities, let's perform some experiments and compare them!
Remember the last experiment of throwing a dice $5$ times. We calculated the probability of getting all ones as
In [10]:
p_all_ones = (1/6) ** 5
p_all_ones
Out[10]:
Now, let's model this experiment, and see what the relative frequency is:
In [11]:
import random
In [12]:
def throw_dice():
return [random.randint(1,6) for _ in range(5)]
In [18]:
throw_dice()
Out[18]:
Given $n$ throws, let's count how many are all ones.
In [14]:
def count_all_ones(n):
amount_found = 0
for _ in range(n):
dice = throw_dice()
if dice == [1,1,1,1,1]:
amount_found += 1
return amount_found
In [15]:
def prob(n):
return count_all_ones(n)/n
In [24]:
prob(1_000_000)
Out[24]:
We can see that the empirical probability gets closer to the theoretical probability as we throw the dice more times.
In [28]:
abs(prob(1_000_000)-p_all_ones)
Out[28]: