Last active
February 6, 2025 21:05
-
-
Save AtelierCartographique/4e85ff29642bb57072deacf08fee2709 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
"""### **Génération de nombres aléatoires**""" | |
# Nombre réels aléatoires, selon une distribution uniforme : | |
a = np.random.rand(3, 3) | |
print(a) | |
# Nombre réels aléatoires, selon une distribution normale : | |
a = np.random.randn(3, 3) | |
print(a) | |
# Nombre entiers aléatoires entre 0 et 1, selon une distribution uniforme : | |
a = np.random.randint(0, 100, size=(3, 3)) | |
print(a) | |
# Nombre aléatoires entre 0 et 1, selon une distribution uniforme. Voire : https://numpy.org/doc/1.16/reference/routines.random.html | |
import time | |
t0 = time.time() # Au passage, on chronométrera l'opération... | |
a = np.random.rand(25000000) # C'est ici qu'on génère l'array 2D remplie de nombres aléatoires | |
print(f"La génération de {a.size} nbr. aléatoires avec NumPy a pris {round(time.time() - t0, 2)}s") | |
print(f"La moyenne de tous ces nombres est de {round(a.mean(),3)}.") | |
# Pendant qu'on y est, et puisqu'on a parlé de la rapidité relative de NumPy par rapport à Python pur, | |
# comparons la durée de la génération de la même liste en Python pur... | |
import random | |
t0 = time.time() | |
l = [] | |
for i in range(25000000): | |
l.append(random.random()) | |
print(f"La génération de {len(l)} nbr. aléatoires en Python pur a pris {round(time.time() - t0, 2)}s") | |
# Nombres entiers (bornés) aléatoires | |
np.random.seed(12) # on peut spécifier une "seed" pour obtenir toujours les mêmes nombre aléatoires à l'intérieur de la même cellule. | |
np.random.randint(1,7,size=(3,3)) # Randint requiert le nombre minimum (inclus), le nombre maximum (exclus) et la taille/forme de l'array |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment