Generare variabili casuali discrete

Simulazioni Monte Carlo in Python

Izzy Weber

Curriculum Manager, DataCamp

Import necessari

import scipy.stats as st

import seaborn as sns import pandas as pd import numpy as np import matplotlib.pyplot as plt
Simulazioni Monte Carlo in Python

Distribuzione uniforme discreta

Funzione di massa di probabilità (PMF) teorica: Funzione di massa di probabilità per la distribuzione uniforme discreta

Simulazioni Monte Carlo in Python

Campionare dalla distribuzione uniforme discreta

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)

grafico dei campioni dalla distribuzione uniforme discreta

Simulazioni Monte Carlo in Python

Distribuzione geometrica

Distribuzione del numero di prove, $X$, necessarie per ottenere un successo, data la probabilità di successo $p$.

Funzione di massa di probabilità, p = 0.5 Funzione di massa di probabilità per la distribuzione geometrica con p = 0.5

Simulazioni Monte Carlo in Python

Distribuzione geometrica

Funzione di massa di probabilità, p = 0.3 Funzione di massa di probabilità per la distribuzione geometrica con p = 0.3

Simulazioni Monte Carlo in Python

Campionare dalla distribuzione geometrica

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

grafico dei campioni dalla distribuzione geometrica

Simulazioni Monte Carlo in Python

Altre distribuzioni di probabilità discrete

  • Poisson (scipy.stats.poisson)
    • Probabilità di un certo numero di eventi in un intervallo fissato di tempo o spazio
  • Binomiale (scipy.stats.binom)
    • Probabilità del numero di successi in una sequenza di $n$ esperimenti indipendenti
  • E altro!
1 https://docs.scipy.org/doc/scipy/reference/stats.html#discrete-distributions
Simulazioni Monte Carlo in Python

Passiamo alla pratica !

Simulazioni Monte Carlo in Python

Preparing Video For Download...