In [160]:
import numpy as np
import matplotlib.pyplot as plt
funkce pro výpočet Gaussiánu
In [162]:
def gaussian(x,mu,sigma):
return 1/(np.sqrt(2*np.pi)*sigma)*np.exp(-(x-mu)**2/(2*sigma**2))
In [163]:
N_repeat=100000 #počet simulovaných hodnot pro histogram
k=10 #počítáme součet 10 hodnot z U(0,1)
y=np.empty(N_repeat) #y je náhodná proměnná, která je součtem k náhodných proměnných z U(0.1)
for i in range(N_repeat):
y[i]=np.sum(np.random.random(k))
In [164]:
plt.hist(y,bins=100,density=True,label='simulace')
mu=k/2 #očekávaná hodnota normálního rozdělení podle centrální limitní věty
sigma=np.sqrt(k/12) #standarní odchylka normálního rozdělení podle centrální limitní věty
xp=np.arange(mu-5*sigma,mu+5*sigma,0.1)
plt.plot(xp,gaussian(xp,mu,sigma),c='red',label='centrální limitní věta')
plt.xlabel('y')
plt.ylabel('pdf(y)')
plt.legend()
plt.show()
In [ ]: