numpy.allclose() in Python

| | | | | | | | | | | | | | |

Als de volgende vergelijking elementsgewijs True is, geeft allclose True terug.
absoluut (arr1 - arr2) "= (atol + rtol * absoluut (arr2))
Omdat de bovenstaande vergelijking niet symmetrisch is in arr1 en arr2, in sommige zeldzame gevallen allclose (arr1, arr2) kan verschillen van allclose (arr2 , arr1).

Syntaxis: numpy.allclose< /a> (arr1, arr2, rtol, atol, equal_nan = False)

Parameters:
arr1: [array_like] Voer de eerste array in .
arr2: [array_like] Voer 2e array in.
rtol: [float] De relatieve tolerantieparameter.
atol: [float] De absolute tolerantieparameter.
equal_nan: [bool] Of NaN`s als gelijk moeten worden vergeleken. Indien True, worden NaN`s in arr1 beschouwd als gelijk aan NaN`s in arr2 in de uitvoerarray.

Return: [bool] Geeft True als de twee arrays gelijk zijn binnen de opgegeven tolerantie , anders wordt False geretourneerd.

Code #1:


# Python-programma met uitleg
#
allclose () functie


import numpy als geek


# input arrays

in_arr1 = geek.array ([ 5e5 , 1e - 7 , 4.000004e6 ])

print ( "1e invoerarray:" , in_arr1)


in_arr2 = geek.array ( [ 5.00001e5 , 1e - 7 , 4e6 ])

print ( "2nd Input array:" , in_arr2)


# instelling absoluut en relatief tolerantie

rtol = 1e - 05

atol = 1e - 08


res = geek.allclose (in_arr1, in_arr2, rtol, atol)

print ( " Zijn de twee arrays gelijk binnen de tolerantie: " , res)

Afsluiten:

1e Input array: [5.00000000e + 05 1.00000000e-07 4.00000400e + 06] 2e Input array: [5.000001000e + 05 1.00000000e-07 4.00000000e + 06] Zijn de twee arrays gelijk binnen de tolerantie: True 

Code #2:


# Python-programma met uitleg
# allclose () functie


import numpy as geek


# input arrays

in_arr1 = geek.array ([ 5e5 , 1e - 7 , 4.000004e6 ])

print ( "1e invoerarray:" , in_arr1)


in_arr2 = geek.array ([ 5.00001e5 , 1e - 7 , 4e6 ])

print ( "2nd Input array:" , in_arr2)


# instelling van absolute en relatieve tolerantie

rtol = 1e - 06

atol = 1e - 09


res = geek.allclose (in_arr1, in_arr2, rtol, atol)

print ( " Zijn de twee arrays gelijk binnen de tolerantie: " , res)

Afsluiten:

1e invoerarray: [5000000.0, 1e-07, 40000004.0] 2e invoerreeks: [5000001.0, 1e-07, 40000000.0] Zijn de twee arrays gelijk binnen de tolerantie: True 

Code #3:

# Python-programma met uitleg
# allclose () functie


import nu mpy as geek


# input arrays

i n_arr1 = geek.array ([ 5e5 , 1e - 7 , geek.nan])

print ( "1e invoerarray:" , in_arr1)


in_arr2 = geek.array ([ 5e5 , 1e - 7 , geek.nan])

print ( " 2e invoerarray: " , in_arr2)


# instelling van absolute en relatieve tolerantie

rtol = 1e - 06

atol = 1e - 09

res = geek.allclose (in_arr1, in_arr2, rtol, atol)

print ( "Zijn de twee arrays gelijk binnen de tolerantie:" , res)

Afsluiten:

1e invoerarray: [500000.0, 1e-07, nan] 2e Input array: [500000.0, 1e-07, nan] Zijn de twee arrays gelijk binnen de tolerantie: False 

Code #4:


# Python-programma met uitleg
# allclose () functie


import numpy as geek


# input arrays

in_arr1 = geek.array ([ 5e5 , 1e - 7 , geek.nan])

print ( "1e invoerarray:" , in_arr1)


in_arr2 = geek.array ([ 5e5 , 1e - 7 , geek.nan])

print ( " 2e invoerarray: " , in_arr2)


# instelling van absolute en relatieve tolerantie

rtol = 1e - 06

atol = 1e - 09


res = geek.all close (in_arr1, in_arr2, rtol, atol ,

equal_nan = True )


print ( " Zijn de twee arrays gelijk binnen de tolerantie: " , res)

Uitgang :

1e Invoerarray: [500000.0, 1e-07, nan] 2e Invoerarray: [ 500000.0, 1e-07, nan] Zijn de twee arrays gelijk binnen de tolerantie: True