Ajout de vecteur dans NumPy

Manav Narula 30 janvier 2023
  1. Utilisez la fonction numpy.add() pour effectuer une addition de vecteur dans NumPy
  2. Utilisez la fonction numpy.ndarray.__add__() pour effectuer une addition de vecteur dans NumPy
  3. Utilisez l’opérateur + pour effectuer une addition de vecteur dans NumPy
  4. Que faire lorsque les deux baies ne sont pas de taille égale
Ajout de vecteur dans NumPy

Un tableau unidimensionnel de listes peut être considéré comme un vecteur. En Python, nous utilisons le module numpy pour effectuer différentes opérations sur les tableaux.

Dans ce didacticiel, nous expliquerons comment effectuer l’ajout de vecteurs en Python.

Lorsque nous disons addition de vecteurs, cela signifie que nous allons ajouter deux tableaux. Les tableaux doivent être de la même longueur dans toutes les méthodes décrites ci-dessous; sinon, une ValueError est déclenchée.

Utilisez la fonction numpy.add() pour effectuer une addition de vecteur dans NumPy

La fonction add() du module numpy permet d’ajouter deux tableaux. Il effectue des ajouts sur des tableaux qui ont la même taille avec des éléments à chaque position correspondante se résumant.

Par example,

import numpy as np

arr1 = np.array([3, 2, 1])
arr2 = np.array([1, 2, 3])

s = np.add(arr1, arr2)
print(s)

Production:

[4 4 4]

Utilisez la fonction numpy.ndarray.__add__() pour effectuer une addition de vecteur dans NumPy

La fonction numpy.ndarray.__add__() est utilisée pour ajouter de la valeur à chaque élément du tableau. Nous pouvons l’utiliser pour effectuer l’ajout de vecteurs en passant le deuxième tableau à cette fonction.

Par example,

import numpy as np

arr1 = np.array([3, 2, 1])
arr2 = np.array([1, 2, 3])

s = arr1.__add__(arr2)
print(s)

Production:

[4 4 4]

Utilisez l’opérateur + pour effectuer une addition de vecteur dans NumPy

Nous pouvons éliminer l’utilisation de n’importe quelle fonction en utilisant simplement l’opérateur arithmétique + pour calculer la somme de deux tableaux.

Par example,

import numpy as np

arr1 = np.array([3, 2, 1])
arr2 = np.array([1, 2, 3])

s = arr1 + arr2
print(s)

Production:

[4 4 4]

Que faire lorsque les deux baies ne sont pas de taille égale

Il a été expliqué précédemment que toutes les méthodes ci-dessus renverront ValueError si les tableaux ne sont pas de la même taille. Pour de telles situations, nous pouvons soit remplir le plus petit tableau avec des 0 manuellement, soit utiliser la fonction numpy.pad() pour effectuer une addition normalement ou créer notre propre fonction pour effectuer une addition.

Voir le code ci-dessous.

import numpy as np

a = np.array([3, 2, 1])
b = np.array([1, 2])


def unequal_add(a, b):
    if len(a) < len(b):
        c = b.copy()
        c[: len(a)] += a
    else:
        c = a.copy()
        c[: len(b)] += b
    return c


print(unequal_add(a, b))

Production:

[4 4 1]

Ce que nous faisons, c’est copier le tableau le plus long et ajouter les éléments du tableau le plus petit au tableau le plus long. Cette méthode consommera beaucoup de mémoire.

Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn