Generování diskrétních náhodných proměnných

Monte Carlo simulace v Pythonu

Izzy Weber

Curriculum Manager, DataCamp

Potřebné importy

import scipy.stats as st

import seaborn as sns import pandas as pd import numpy as np import matplotlib.pyplot as plt
Monte Carlo simulace v Pythonu

Diskrétní rovnoměrné rozdělení

Teoretická funkce pravděpodobnostní hmotnosti (PMF): Teoretická funkce pravděpodobnostní hmotnosti pro diskrétní rovnoměrné rozdělení

Monte Carlo simulace v Pythonu

Vzorkování z diskrétního rovnoměrného rozdělení

low = 3 
high = 21
samples = st.randint.rvs(low, high, size=1000)
samples_dict = {"nums":samples}
sns.histplot(x="nums", data=samples_dict, bins=6, binwidth=0.3)

graf výsledků vzorkování z diskrétního rovnoměrného rozdělení

Monte Carlo simulace v Pythonu

Geometrické rozdělení

Rozdělení pravděpodobnosti počtu pokusů, $X$, potřebných k dosažení jednoho úspěchu, při pravděpodobnosti úspěchu $p$.

Funkce pravděpodobnostní hmotnosti, p = 0.5 Teoretická funkce pravděpodobnostní hmotnosti pro geometrické rozdělení, kde p = 0,5

Monte Carlo simulace v Pythonu

Geometrické rozdělení

Funkce pravděpodobnostní hmotnosti, p = 0.3 Teoretická funkce pravděpodobnostní hmotnosti pro geometrické rozdělení, kde p = 0,3

Monte Carlo simulace v Pythonu

Vzorkování z geometrického rozdělení

p = 0.2
samples = st.geom.rvs(p, size=1000)
samples_dict = {"nums":samples}
sns.histplot(x="nums", data=samples_dict)

graf výsledků vzorkování z geometrického rozdělení

Monte Carlo simulace v Pythonu

Další diskrétní pravděpodobnostní rozdělení

  • Poissonovo (scipy.stats.poisson)
    • Vyjadřuje pravděpodobnost daného počtu událostí v pevném časovém nebo prostorovém intervalu
  • Binomické (scipy.stats.binom)
    • Vyjadřuje pravděpodobnost počtu úspěchů v posloupnosti $n$ nezávislých pokusů.
  • A další!
1 https://docs.scipy.org/doc/scipy/reference/stats.html#discrete-distributions
Monte Carlo simulace v Pythonu

Pojďme procvičovat!

Monte Carlo simulace v Pythonu

Preparing Video For Download...