NumPy ufuncs

Vad är ufuncs?

Ufuncs betyder “allmänna funktioner” (Universal Functions) och är NumPy-funktioner som utför operationer på ndarray-objekt.

Varför använda ufuncs?

Ufunc används för att uppnå vektorisering i NumPy, vilket är mycket snabbare än att iterera över element.

De erbjuder också andra metoder som broadcast och summor, vilket är mycket hjälpsamt för beräkningar.

Ufunc tar också andra parametrar, till exempel:

where Boolska arrayer eller villkor som definierar var operationerna bör utföras.

dtype Definiera returtypen för elementen.

out Returvärdet bör kopieras till utdataarrayen.

Vad är vektorisering?

Att konvertera iterativa uttryck till vektorbaserade operationer kallas för vektorisering.

Eftersom modern CPU har optimerats för sådana operationer är det snabbare.

Summera elementen i de två listorna:

List 1: [1, 2, 3, 4]

List 2: [4, 5, 6, 7]

Ett sätt är att traversera båda listorna och sedan summera varje element.

Exempel

Om det inte finns någon ufunc kan vi använda Python inbyggda zip() Metod:

x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = []
for i, j in zip(x, y):
  z.append(i + j)
print(z)

Kör Exempel

För detta har NumPy en ufunc som kallas add(x, y)detta kommer att ge samma resultat.

Exempel

Genom ufunc kan vi använda add() Funktion:

import numpy as np
x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = np.add(x, y)
print(z)

Kör Exempel