Hodíme mincí v Pythonu

Základy pravděpodobnosti v Pythonu

Alexander A. Ramírez M.

CEO @ Synergy Vision

Pravděpodobnost

  • Základ datové vědy
  • Umožňuje generovat data z modelů
  • Studuje zákonitosti náhodných jevů
Základy pravděpodobnosti v Pythonu

Získejte intuici

...pomocí hodů mincí

Hod mincí

Základy pravděpodobnosti v Pythonu

Pouze dva výsledky

Hlava nebo orel

Hlava a orel jednostocentové mince

Základy pravděpodobnosti v Pythonu

Hod mincí v Pythonu

Bernoulliho náhodný experiment

from scipy.stats import bernoulli
bernoulli.rvs(p=0.5, size=1)
array([0])

Další tah

bernoulli.rvs(p=0.5, size=1)
array([1])
Základy pravděpodobnosti v Pythonu

Hod více mincemi

Změňte parametr size pro více hodů...

bernoulli.rvs(p=0.5, size=10)
array([0, 0, 0, 0, 0, 0, 1, 1, 0, 0])

Kolik hlav?

sum(bernoulli.rvs(p=0.5, size=10))
5
Základy pravděpodobnosti v Pythonu

Hod více mincemi (pokrač.)

Další tah...

sum(bernoulli.rvs(p=0.5, size=10))
2
Základy pravděpodobnosti v Pythonu

Hod více mincemi (pokrač.)

Binomální náhodná veličina

from scipy.stats import binom
binom.rvs(n=10, p=0.5, size=1)
array([7])

Mnoho tahů

binom.rvs(n=10, p=0.5, size=10)
array([6, 2, 3, 5, 5, 5, 5, 4, 6, 6])
Základy pravděpodobnosti v Pythonu

Hod více mincemi (pokrač.)

Tahy zaujatou mincí

binom.rvs(n=10, p=0.3, size=10)
array([3, 4, 3, 3, 2, 2, 2, 2, 3, 6])
Základy pravděpodobnosti v Pythonu

Seed generátoru náhodných čísel

  • Použijte parametr random_state funkce rvs()
from scipy.stats import binom
binom.rvs(n=10, p=0.5, size=1, random_state=42)
  • Použijte numpy.random.seed()
import numpy as np
np.random.seed(42)
Základy pravděpodobnosti v Pythonu

Seed generátoru náhodných čísel (pokrač.)

Hod 10 férovými mincemi s náhodným seedem

from scipy.stats import binom
import numpy as np

np.random.seed(42)
binom.rvs(n=10, p=0.5, size=1)
array([4])
Základy pravděpodobnosti v Pythonu

Procvičte hod mincí v Pythonu

Základy pravděpodobnosti v Pythonu

Preparing Video For Download...