Les tableaux NumPy sont conçus pour le calcul numérique et scientifique, ce qui les rend idéaux pour des tâches telles que l’analyse de données, l’apprentissage automatique (Machine Learning) et les opérations mathématiques.
Comprendre les tableaux Numpy #
Dans les tableaux Numpy, tous les éléments d’un même tableau doivent avoir le même type de données. Cette homogénéité est l’une des principales caractéristiques qui rendent les tableaux NumPy efficaces et bien adaptés au calcul numérique :
- Efficacité : Sous le capot, NumPy est implémenté en C et Fortran, ce qui rend les opérations sur les grands tableaux très rapides par rapport au code Python équivalent.
- Puissance mathématique : tu n’imagines pas le large éventail de fonctions et d’opérations mathématiques disponibles dans NumPy, ce qui facilite les tâches telles que l’algèbre linéaire, les statistiques et les calculs mathématiques complexes.
- Interopérabilité : NumPy s’intègre de manière transparente à d’autres bibliothèques Python, telles que Pandas, SciPy et Matplotlib.
Création de tableaux Numpy #
NumPy propose différents types de fonctions pour créer des tableaux en fonction de différents objectifs, ce qui simplifie grandement notre travail, par exemple pour créer des tableaux de zéros, de uns, etc. Voici les fonctions les plus couramment utilisées :
- np.array : Crée un tableau numpy en passant une liste.
- np.linspace :
linspace
crée un tableau de valeurs régulièrement espacées sur une plage spécifiée.np.linspace(start, stop, num, endpoint=True, retstep=False)
- np.logspace :
logspace
génère un tableau de valeurs régulièrement espacées sur une échelle logarithmique.np.logspace(start, stop, num=50, base=10.0, dtype=None)
- np.arange :
arange
crée un tableau avec des valeurs régulièrement espacées entrestart
etstop
avec une taille de pas spécifiée.np.arange(start, stop, step, dtype=None)
- np.zeros :
zeros
crée un tableau rempli de zéros de la forme spécifiée.np.zeros(shape, dtype=None)
- np.ones :
ones
génère un tableau rempli de uns de la forme spécifiée.np.ones(shape, dtype=None)
- np.zeros_like : crée un nouveau tableau rempli de zéros mais avec la même forme et le même type de données qu’un tableau existant.
- np.ones_like : est similaire à
np.zeros_like
, mais il crée un nouveau tableau rempli de uns au lieu de zéros.
# Création d'un tableau d'entiers avec un dtype explicite, ce qui n'est pas nécessaire. int_array = np.array([1, 2, 3], dtype=np.int32) # Création d'un tableau 2D original_array = np.array([[1, 2, 3], [4, 5, 6]]) # Créer un tableau de 10 valeurs également espacées de 0 à 1 linspace_arr = np.linspace(0, 1, 10) # Créer un tableau de 5 valeurs espacées logarithmiquement de 1 à 100 logspace_arr = np.logspace(0, 2, 5) # Créer un tableau de valeurs de 0 à 9 avec un pas de 2 arange_arr = np.arange(0, 10, 2) # Créer un tableau 3x3 rempli de zéros zeros_arr = np.zeros((3, 3)) # Créer un tableau 2x4 rempli de uns ones_arr = np.ones((2, 4)) # Créer un nouveau tableau rempli de zéros, # correspondant à la forme et au type de données du tableau d'origine zeros_array = np.zeros_like(original_array) # Créer un nouveau tableau rempli de uns, # correspondant à la forme et au type de données du tableau d'origine ones_array = np.ones_like(original_array)