Генерування неперервних випадкових величин

Моделювання Монте-Карло в Python

Izzy Weber

Curriculum Manager, DataCamp

Нормальний розподіл

Дзвоноподібна, симетрична щодо середнього (або loc); ширина визначається стандартним відхиленням (або scale)

Зріст дорослих чоловіків у США має нормальний розподіл: Theoretical probability density function of normal distribution

Моделювання Монте-Карло в Python

Зміна масштабу (стандартного відхилення)

Theoretical probability density function of normal distribution with different standard deviations

Моделювання Монте-Карло в Python

Зміна loc (середнього)

Theoretical probability density function of normal distribution with different means

Моделювання Монте-Карло в Python

Зміна і масштабу, і loc

Theoretical probability density function of normal distribution with different standard deviations and means

Моделювання Монте-Карло в Python

Вибірка з нормальних розподілів

  • Нормальний розподіл зросту дорослих чоловіків у США; середнє = 177 см; стандартне відхилення = 8 см

  • Який відсоток має зріст вище 190 або нижче 165 см?

heights = st.norm.rvs(loc=177, scale=8, size=10000)

qualified = (heights < 165) | (heights > 190)
print(np.sum(qualified) * 100/10000)
12.28
Моделювання Монте-Карло в Python

Візуалізація результатів моделювання

heights_dict = {"heights":heights}
sns.histplot(x="heights", data=heights_dict)
plt.axvline(x=165, color="red")
plt.axvline(x=190, color="red")

Histogram of samples taken from normal distribution

Моделювання Монте-Карло в Python

Інші неперервні розподіли ймовірностей

  • Неперервний рівномірний розподіл (st.uniform)
    • Неперервний аналог дискретного рівномірного розподілу
  • Експоненційний розподіл (st.expon)
    • Неперервний аналог геометричного розподілу
1 https://docs.scipy.org/doc/scipy/tutorial/stats/continuous.html
Моделювання Монте-Карло в Python

Давайте потренуємось!

Моделювання Монте-Карло в Python

Preparing Video For Download...