Vi slår slant i Python

Grunderna i sannolikhetslära med Python

Alexander A. Ramírez M.

CEO @ Synergy Vision

Sannolikhet

  • Grundläggande inom datavetenskap
  • Gör det möjligt att generera data från modeller
  • Studerar mönster i slumpmässiga fenomen
Grunderna i sannolikhetslära med Python

Bygg intuition

...med myntkast

Myntkast

Grunderna i sannolikhetslära med Python

Bara två utfall

Krona eller klave

En cents mynt – krona och klave

Grunderna i sannolikhetslära med Python

Slå slant i Python

Bernoulliexperiment

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

Ytterligare ett kast

bernoulli.rvs(p=0.5, size=1)
array([1])
Grunderna i sannolikhetslära med Python

Kasta flera mynt

Ändra parametern size för fler kast...

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

Hur många kronor?

sum(bernoulli.rvs(p=0.5, size=10))
5
Grunderna i sannolikhetslära med Python

Kasta flera mynt (forts.)

Ytterligare ett kast...

sum(bernoulli.rvs(p=0.5, size=10))
2
Grunderna i sannolikhetslära med Python

Kasta flera mynt (forts.)

Binomial slumpvariabel

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

Många kast

binom.rvs(n=10, p=0.5, size=10)
array([6, 2, 3, 5, 5, 5, 5, 4, 6, 6])
Grunderna i sannolikhetslära med Python

Kasta flera mynt (forts.)

Viktat mynt

binom.rvs(n=10, p=0.3, size=10)
array([3, 4, 3, 3, 2, 2, 2, 2, 3, 6])
Grunderna i sannolikhetslära med Python

Slumptalsgeneratorns startvärde

  • Använd parametern random_state i funktionen rvs()
from scipy.stats import binom
binom.rvs(n=10, p=0.5, size=1, random_state=42)
  • Använd numpy.random.seed()
import numpy as np
np.random.seed(42)
Grunderna i sannolikhetslära med Python

Slumptalsgeneratorns startvärde (forts.)

Kasta 10 rättvisa mynt med ett fast startvärde

from scipy.stats import binom
import numpy as np

np.random.seed(42)
binom.rvs(n=10, p=0.5, size=1)
array([4])
Grunderna i sannolikhetslära med Python

Nu kör vi en övning!

Grunderna i sannolikhetslära med Python

Preparing Video For Download...