Numpy NP.allose

Numpy NP.allose
La fonction Numpy AllClose () détermine si deux tableaux sont égaux à une tolérance sur une base élément par éléments.

Ce tutoriel explorera la syntaxe de la fonction allclose () et donnera plusieurs exemples pratiques démontrant comment l'utiliser.

Fonction Numpy AllClose ()

La fonction allClose () comparera les éléments correspondants dans les tableaux d'entrée et déterminera s'ils sont égaux (avec tolérance).

Une valeur de tolérance est toujours positive, généralement en petit nombre. Pour calculer la différence absolue entre les deux tableaux d'entrée, Numpy ajoute les différences relatives et absolues.

La différence relative est le produit de RTOL et ABS (B), où B est le deuxième tableau d'entrée.

Syntaxe de fonction

Ceci est illustré dans la syntaxe de fonction illustrée ci-dessous:

nombant.allClose (a, b, rtol = 1e-05, atol = 1e-08, equal_nan = false)

Explorons les paramètres de fonction.

Paramètres de fonction

  1. A - le premier tableau d'entrée.
  2. B - le deuxième tableau d'entrée.
  3. RTOL - définit la tolérance relative.
  4. atol - définit la tolérance absolue.
  5. Equal_nan - spécifie si vous devez ou non comparer Nan comme égal. Si elle est définie sur true, la fonction traitera un NAN dans le premier tableau comme équivalent à un NAN dans le deuxième tableau.

Valeur de retour de fonction

La fonction renvoie une valeur booléenne. Si les tableaux spécifiés sont égaux dans la valeur de tolérance définie, la fonction renvoie true. Sinon, la fonction retournera fausse.

Exemple 1

Considérez l'exemple ci-dessous qui montre comment utiliser la fonction allClose () dans un tableau 1D.

# Importer Numpy
Importer Numpy comme NP
# premier tableau
arr_1 = np.Array ([1e5,1e-5])
# Deuxième tableau
arr_2 = np.tableau ([1.001e10, 1.002E-12])
imprimer (f "égal?: np.allClose (arr_1, arr_2) ")

Nous créons deux tableaux 1-D dans l'exemple ci-dessus et les comparons en utilisant la fonction allClose ().

Remarque: nous ne définissons pas les valeurs de tolérance absolues et relatives dans l'exemple ci-dessus. La fonction doit retourner:

Égal?: FAUX

Exemple n ° 2 pour définir les valeurs de tolérance, nous pouvons utiliser l'exemple ci-dessous:

# premier tableau
arr_1 = np.Array ([1e5,1e-5])
# Deuxième tableau
arr_2 = np.tableau ([1.001e10, 1.002E-12])
# Valeurs de tolérance
rtol = 1e10
atol = 1e12
imprimer (f "égal?: np.allClose (arr_1, arr_2, rtol = rtol, atol = atol) ")

Dans l'exemple ci-dessus, nous définissons les valeurs de tolérance relative et absolue en utilisant les paramètres RTOL et ATOL.

Remarque: Les valeurs de tolérance de l'exemple ci-dessus ont été modifiées à des fins d'illustration.

Le code ci-dessous doit retourner:

Égal?: Vrai

Exemple n ° 3

Dans l'exemple ci-dessous, nous utilisons la fonction allClose () pour tester l'égalité avec des tableaux qui incluent des valeurs NAN.

Arr1 = np.tableau ([1.0e10, np.nan])
arr2 = np.tableau ([1.0e10, np.nan])
imprimer (f "égal?: np.allClose (arr1, arr2) ")

Dans l'exemple ci-dessus, nous avons deux tableaux qui semblent égaux. Cependant, lorsque nous utilisons la fonction allClose (), il renvoie False comme indiqué:

Égal?: FAUX

C'est parce que les tableaux contiennent des valeurs nan. Par défaut, la fonction allClose () traitera les valeurs NAN différemment.

Pour résoudre ce problème, nous pouvons définir le paramètre Equal_nan sur true comme indiqué:

Arr1 = np.tableau ([1.0e10, np.nan])
arr2 = np.tableau ([1.0e10, np.nan])
imprimer (f "égal?: np.allClose (Arr1, Arr2, Equal_nan = true) ")

Dans ce cas, la fonction doit revenir:

Égal?: Vrai

Terminaison

Cet article a discuté de la façon d'utiliser la fonction allclose () dans Numpy. Nous avons également démontré comment utiliser la fonction avec divers exemples.

Codage heureux!!!