Trasează distribuția
Toate aceste vizualizări elaborate ne-au abătut de la subiect. Mai avem de rezolvat problema de un milion de dolari: Care sunt șansele să ajungi la etajul 60 al Empire State Building?
Practic, vrei să știi care sunt punctele finale ale tuturor deplasărilor aleatoare simulate. Aceste puncte finale urmează o anumită distribuție, pe care o poți vizualiza cu o histogramă.
Reține că, dacă rularea codului durează prea mult, este posibil să trasezi histograma unor date greșite!
Acest exercițiu face parte din cursul
Python intermediar
Instrucțiuni pentru exercițiu
- Pentru a ne asigura că avem suficiente simulări, dă-i drumul. Simulează deplasarea aleatoare de 500 de ori.
- Din
np_aw_t, selectează ultima linie. Aceasta conține punctele finale ale celor 500 de deplasări aleatoare simulate. Stochează acest array NumPy caends. - Folosește
plt.hist()pentru a construi o histogramă a valorilor dinends. Nu uita deplt.show()pentru a afișa graficul.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# numpy and matplotlib imported, seed set
# Simulate random walk 500 times
all_walks = []
for i in range(500) :
random_walk = [0]
for x in range(100) :
step = random_walk[-1]
dice = np.random.randint(1,7)
if dice <= 2:
step = max(0, step - 1)
elif dice <= 5:
step = step + 1
else:
step = step + np.random.randint(1,7)
if np.random.rand() <= 0.001 :
step = 0
random_walk.append(step)
all_walks.append(random_walk)
# Create and plot np_aw_t
np_aw_t = np.transpose(np.array(all_walks))
# Select last row from np_aw_t: ends
____ = ____[____,____]
# Plot histogram of ends, display plot
____
____