Simuler, avec Python ou un tableur, N échantillons de taille 𝑛 d’une variable aléatoire, d’espérance 𝜇 et d’écart type 𝜎.

exemple : considérons la loi :

$x_i$ 5 10 20
$p_i$ 0.2 0.7 0.1

Calculer son espérance et son écart-type :

L'espérance vaut

L'écart-type vaut

Pour simuler un échantilon de taille 1, compléter la fonction suivante :

In [ ]:
from random import randint

def simulationUn():
    nombreAleatoire  = randint(1,10)
    if nombreAleatoire <= 2:
        return 5
    else:
        if nombreAleatoire <= 9:
            return ...
        else:
            return ...
In [ ]:
simulationUn()

Pour simuler un échantilon de taille n, compléter la fonction suivante :

In [ ]:
from random import randint

def simulation(n):
    i = 1
    while i <= n :
        print( simulationUn() )
        i = ...
    
In [ ]:
simulation(7)

Modifions cette fonction pour qu'elle stocke l'échantillon dans une liste :

In [ ]:
from random import randint

def simulation(n):
    i = 1
    L = []  # L est une liste vide
    while i <= n :
        L = L +  [simulationUn()]
        i = ...
    return L
In [ ]:
simulation(4)

Ecrire une fonction qui calcule la moyenne des éléments d'une liste :

In [ ]:
def moyenneListe(L):
    m  = 0
    for i in L:
        m = ...
    return m/len(L)
In [ ]:
a = simulation(20)
print(a)
moyenneListe(a)

Simulation de N échantillons de taille n et calcul de la moyenne

In [ ]:
from math import sqrt
N = 1000
n = 1000
C = 0 #compte les cas où l'écart entre la moyenne de l'échantillon et 10 est inférieur ou égal à 2*sigma/racine(n)
for i in range(N):
    if abs( moyenneListe(simulation(n)) - ... ) <= 2*sqrt(...)/sqrt(n):
        C = ...
print("La proportion des cas où où l'écart entre la moyenne de l'échantillon et 10 est inférieur ou égal à 2sigma/racine(n) est : ", C/N )
    
In [ ]:
 
In [ ]: