ufuncs NumPy

Qu'est-ce que ufuncs ?

Ufuncs signifie "fonctions universelles" (Universal Functions), elles sont des fonctions NumPy qui opèrent sur des objets ndarray.

Pourquoi utiliser ufunc ?

Ufunc est utilisé pour la vectorisation dans NumPy, ce qui est beaucoup plus rapide que l'itération des éléments.

Ils fournissent également des méthodes telles que la réduction et l'addition, qui sont très utiles pour les calculs.

Les ufunc acceptent également d'autres paramètres, comme :

where Tableau de booléens ou condition, utilisé pour définir où l'opération doit être effectuée.

dtype Définir le type de retour des éléments.

out Le tableau de sortie où les valeurs doivent être copiées doit être retourné.

Qu'est-ce que la vectorisation ?

Convertir des instructions itératives en opérations basées sur des vecteurs s'appelle vectorisation.

Comme les CPU modernes sont optimisés pour de telles opérations, elles sont plus rapides.

Additionner les éléments des deux listes :

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

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

Une méthode consiste à parcourir deux listes et à additionner chaque élément.

Exemple

Si nous n'avons pas d'ufunc, nous pouvons utiliser les fonctions intégrées de Python zip() Méthode :

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

Exécuter l'exemple

Pour cela, NumPy a un ufunc appelé add(x, y)qui produit le même résultat.

Exemple

Nous pouvons utiliser ufunc pour add() Fonction :

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

Exécuter l'exemple