def echantillon(p,n): '''on simule une variable aléatoire de Bernoulli''' succes = 0 for i in range(n): if random.random() <= p: succes = succes+1 f = succes /n return f def EllipseFluctuation(n,nTirages,pas): '''on discretise p au pas "pas" sur [0,1], en chacun on réalise nTirages d'une expérience de Bernoulli de paramètres p,nTirages on affiche les couples (p,f) on trace le contour de l'ellipse d'incertitude''' p = 0 Lx, Ly = [],[] Exbas, Exhaut, Eybas, Eyhaut = [],[],[], []#pour contour while(p<1): for i in range(nTirages) : Lx.append(p); Ly.append(echantillon(p,n)) sigma = sqrt(p*(1-p)/n) Exbas.append(p); Exhaut.append(1-p-pas)#pour contour Eybas.append(p-1.96*sigma) ; Eyhaut.append(p+1.96*sigma)#pour contour p = p + pas Eyhaut.reverse() #pour contour Ex = Exbas + Exhaut; Ey = Eybas + Eyhaut #pour le contour plt.plot(Lx,Ly,'b.') plt.plot(Ex, Ey, 'r-') #pour contour plt.plot() plt.grid() plt.show()