Příklad s pravděpodobností
V tomto cvičení si připomeneme rozdíl mezi vzorkováním s vracením a bez vracení. Pravděpodobnost události vypočítáme pomocí simulace a porovnáme, jak volba metody vzorkování výsledek ovlivní.
Představ si mísu plnou barevných bonbonů – tři modré, dva zelené a pět žlutých. Vytáhni tři bonbony jeden po druhém, a to jednou s vracením a jednou bez vracení. Cílem je vypočítat pravděpodobnost, že všechny tři bonbony budou žluté.
Toto cvičení je součástí kurzu
Statistické simulace v Pythonu
Pokyny k cvičení
- Vytvoř proměnnou
bowljako seznam obsahující tři modré bonbony'b', dva zelené'g'a pět žlutých'y'. - Vyber vzorek tří bonbonů s vracením (
sample_rep) a bez vracení (sample_no_rep). - Pro vzorek s vracením: pokud se v
sample_repnevyskytuje žádný bonbon'b'ani'g', zvyšsuccess_repo jedna. Stejným způsobem zvyšsuccess_no_rep, pokud se žádný bonbon'b'ani'g'nevyskytuje vsample_no_rep. - Vypočítej příslušné pravděpodobnosti jako podíl počtu úspěchů a celkového počtu iterací.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# Set up the bowl
success_rep, success_no_rep, sims = 0, 0, 10000
bowl = list(____*3 + ____*2 + ____*5)
for i in range(sims):
# Sample with and without replacement & increment success counters
sample_rep = np.random.____(bowl, size=3, replace=____)
sample_no_rep = np.random.____(bowl, size=3, replace=____)
if ('b' not in sample_rep) & ('g' not in sample_rep) :
____
if ('b' not in sample_no_rep) & ('g' not in sample_no_rep) :
____
# Calculate probabilities
prob_with_replacement = ____/sims
prob_without_replacement = ____/sims
print("Probability with replacement = {}, without replacement = {}".format(prob_with_replacement, prob_without_replacement))