Vektoraddition in NumPy
-
Verwenden der Funktion
numpy.add()
zum die Vektoraddition in NumPy durchzuführen -
Verwenden der Funktion
numpy.ndarray.__add__()
zum die Vektoraddition in NumPy durchzuführen -
Verwenden den Operator
+
zum die Vektoraddition in NumPy durchzuführen - Was tun, wenn die beiden Arrays nicht gleich groß sind?
Ein eindimensionales Array von Listen kann als Vektor betrachtet werden. In Python verwenden wir das numpy-Modul, um verschiedene Operationen an Arrays auszuführen.
In diesem Tutorial werden wir diskutieren, wie die Vektoraddition in Python durchgeführt wird.
Wenn wir Vektoraddition sagen, bedeutet dies, dass wir zwei Arrays hinzufügen. Die Arrays müssen bei allen unten diskutierten Methoden gleich lang sein. Andernfalls wird ein ValueError ausgelöst.
Verwenden der Funktion numpy.add()
zum die Vektoraddition in NumPy durchzuführen
Mit der Funktion add()
aus dem numpy-Modul können zwei Arrays hinzugefügt werden. Es führt eine Addition über Arrays durch, die dieselbe Größe haben, wobei Elemente an jeder entsprechenden Position zusammengefasst werden.
Beispielsweise,
import numpy as np
arr1 = np.array([3, 2, 1])
arr2 = np.array([1, 2, 3])
s = np.add(arr1, arr2)
print(s)
Ausgabe:
[4 4 4]
Verwenden der Funktion numpy.ndarray.__add__()
zum die Vektoraddition in NumPy durchzuführen
Mit der Funktion numpy.ndarray.__add__()
wird jedem Element des Arrays ein Wert hinzugefügt. Wir können es verwenden, um eine Vektoraddition durchzuführen, indem wir das zweite Array an diese Funktion übergeben.
Beispielsweise,
import numpy as np
arr1 = np.array([3, 2, 1])
arr2 = np.array([1, 2, 3])
s = arr1.__add__(arr2)
print(s)
Ausgabe:
[4 4 4]
Verwenden den Operator +
zum die Vektoraddition in NumPy durchzuführen
Wir können die Verwendung jeder Funktion eliminieren, indem wir einfach den arithmetischen Operator +
verwenden, um die Summe zweier Arrays zu berechnen.
Beispielsweise,
import numpy as np
arr1 = np.array([3, 2, 1])
arr2 = np.array([1, 2, 3])
s = arr1 + arr2
print(s)
Ausgabe:
[4 4 4]
Was tun, wenn die beiden Arrays nicht gleich groß sind?
Es wurde bereits erläutert, dass alle oben genannten Methoden ValueError zurückgeben, wenn die Arrays nicht dieselbe Größe haben. In solchen Situationen können wir entweder das kleinere Array manuell mit Nullen füllen oder die Funktion numpy.pad()
verwenden, um die Addition normal durchzuführen, oder unsere eigene Funktion erstellen, um die Addition durchzuführen.
Siehe den Code unten.
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))
Ausgabe:
[4 4 1]
Wir kopieren das längere Array und fügen die Elemente des kleineren Arrays dem längeren Array hinzu. Diese Methode verbraucht viel Speicher.
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