ÎncepețiÎncepe gratuit

Generarea numerelor aleatoare folosind modulul np.random

Vom folosi intens modulul np.random pe parcursul acestui curs și al continuării sale. De fapt, vei apela metodele instanțelor RNG mai des decât orice altă funcție atunci când îți pui pălăria de statistician hacker. Să începem cu o funcție simplă: rng.random(). Aceasta returnează un număr aleatoriu între zero și unu. Dacă o apelezi de câteva ori, vei observa că numerele variază între zero și unu.

În acest exercițiu, vom genera un număr mare de valori aleatoare între zero și unu, apoi vom reprezenta grafic o histogramă a rezultatelor. Dacă numerele sunt cu adevărat aleatoare, toate barele histogramei ar trebui să aibă înălțimi (aproximativ) egale.

Poate ai observat că, în video, Justin a generat 4 numere aleatoare transmițând argumentul cheie size=4 funcției rng.random(). Această abordare este mai eficientă decât o buclă for. Totuși, în acest exercițiu vei scrie o buclă for pentru a experimenta statisticile hacker ca practică de repetare a unui experiment de mai multe ori.

Acest exercițiu face parte din cursul

Gândire statistică în Python (Partea 1)

Vezi cursul

Instrucțiuni pentru exercițiu

  • Inițializează și setează un generator de numere aleatoare, rng, folosind seed-ul 42.
  • Inițializează un array gol, random_numbers, cu 100.000 de intrări, pentru a stoca numerele aleatoare. Asigură-te că folosești np.empty(100000) în acest scop.
  • Scrie o buclă for pentru a genera 100.000 de numere aleatoare cu rng.random(), stocându-le în array-ul random_numbers. Parcurge range(100000) pentru a face asta.
  • Reprezintă o histogramă a lui random_numbers. Nu este necesar să etichetezi axele în acest caz, deoarece verificăm doar generatorul de numere aleatoare. Apasă Trimite răspunsul pentru a afișa graficul.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Instantiate and seed the random number generator


# Initialize random numbers: random_numbers
random_numbers = ____

# Generate random numbers by looping over range(100000)
for i in ____:
    random_numbers[i] = ____

# Plot a histogram
_ = plt.hist(____)

# Show the plot
plt.show()
Editează și rulează codul