Dalla media del campione alla media della popolazione

Fondamenti di probabilità in Python

Alexander A. Ramírez M.

CEO @ Synergy Vision

Ripasso media campionaria

$$ $$

Legge dei grandi numeri

La media campionaria si avvicina al valor atteso all’aumentare della dimensione del campione.

Francobollo di Jakob Bernoulli

Fondamenti di probabilità in Python

Ripasso media campionaria (cont.)

$$ \text{Media campionaria} = \bar{X_2} = \frac{x_1+x_2}{2} $$

Fondamenti di probabilità in Python

Ripasso media campionaria (cont.)

$$ \text{Media campionaria} = \bar{X_3} = \frac{x_1+x_2+x_3}{3} $$

Fondamenti di probabilità in Python

Ripasso media campionaria (cont.)

$$ \text{Media campionaria} = \bar{X_n} = \frac{x_1+x_2+\cdots +x_n}{n} $$

Fondamenti di probabilità in Python

Ripasso media campionaria (cont.)

$$ \text{Media campionaria} = \bar{X_n} = \frac{x_1+x_2+\cdots +x_n}{n} \to \mathbb{E(X)} $$

Fondamenti di probabilità in Python

Generare il campione

# Importa binom e describe
from scipy.stats import binom
from scipy.stats import describe

# Campione di 250 lanci di moneta equa
samples = binom.rvs(n=1, p=0.5, size=250, random_state=42)
# Stampa i primi 100 valori del campione
print(samples[0:100])
[0 1 1 1 0 0 0 1 1 1 0 1 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 1 1 0 1 0 0 1 1 1 0
 0 1 0 0 0 0 1 0 1 0 1 1 0 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1
 1 1 1 0 0 0 1 1 0 0 0 0 1 1 1 0 0 1 1 1 1 0 1 0 0 0]
Fondamenti di probabilità in Python

Calcolare la media campionaria

# Calcola la media campionaria
print(describe(samples[0:10]).mean)
0.6
Fondamenti di probabilità in Python

Convergenza della media campionaria al valor atteso

Fondamenti di probabilità in Python

Animazione media campionaria verso il valor atteso

Fondamenti di probabilità in Python

Rappresentare la media campionaria

$$ $$

from scipy.stats import binom
from scipy.stats import describe
import matplotlib.pyplot as plt

# Definisci le variabili
coin_flips, p, sample_size , averages = 1, 0.5, 1000, []
# Genera il campione
samples = binom.rvs(n=coin_flips, p=p, size=sample_size, random_state=42)
Fondamenti di probabilità in Python

Rappresentare la media campionaria (cont.)

$$ $$

# Calcola la media campionaria
for i in range(2,sample_size+1):
    averages.append(describe(samples[0:i]).mean)

# Stampa i primi valori di averages
print(averages[0:10])
[0.5, 0.6666666666666666, 0.75, 0.6, 0.5, 0.42857142857142855, 0.5, 
0.5555555555555556,0.6, 0.5454545454545454]
Fondamenti di probabilità in Python

Rappresentare la media campionaria (cont.)

$$ $$

# Aggiungi linea della media di popolazione e grafico della media campionaria
plt.axhline(binom.mean(n=coin_flips, p=p), color='red')
plt.plot(averages, '-')
# Aggiungi legenda
plt.legend(("Population mean","Sample mean"), loc='upper right')
plt.show()
Fondamenti di probabilità in Python

Grafico della media campionaria

Grafico della media campionaria

Fondamenti di probabilità in Python

Ayo berlatih!

Fondamenti di probabilità in Python

Preparing Video For Download...