Рубрики
Без рубрики

NumPy isclose Объясняется примерами на Python

Предположим, у вас есть два массива и возникает ситуация, когда вам нужно сравнить 2 массива по элементам. NumPy isclose() делает это за вас.

Автор оригинала: Team Python Pool.

NumPy isclose Объясняется примерами на Python

Привет гики и добро пожаловать в этой статье мы рассмотрим NumPy isclose(). Наряду с этим, для общего лучшего понимания, мы также рассмотрим его синтаксис и параметр. Затем мы увидим применение всей теоретической части на нескольких примерах. Но сначала давайте попробуем получить краткий обзор этой функции через ее определение.

Предположим, у вас есть два массива и возникает ситуация, когда вам нужно сравнить 2 массива поэлементно. Функция NumPy isclose() делает это за вас. Кроме того, он предоставляет вам возможность добавить толерантное значение, что очень удобно при работе с данными научных экспериментов. Кроме того, он возвращает массив boolean по завершении программы. В следующем разделе мы рассмотрим синтаксис, связанный с ним.

СИНТАКСИС

numpy.isclose(a,b)

Это общий синтаксис нашей функции. Теперь в следующем разделе рассмотрим различные параметры, связанные с ним.

ПАРАМЕТРЫ

1. a,b: array_like

Этот параметр представляет 2 входных массива, которые необходимо сравнить.

2. rtol:float

Этот параметр представляет собой параметр относительного допуска. Это можно понимать как отношение абсолютной погрешности производимого измерения.

3. atol:float

Этот параметр представляет собой параметр абсолютного допуска, который можно понимать как минимальную разницу между измеренным значением и фактическим значением. Рекомендуется не использовать это при сравнении чисел, которые меньше единицы.

<сильный>4. equal_nan: bool

Этот параметр, если он присутствует, сравнивает Nan как равные. Если True, то Nan в a будет считаться равным Nan в b в выходном массиве.

RETURN

Y: array_like

По завершении программы он возвращает логический массив. Который имеет значение true, если значения равны, и false, если нет.

ПРИМЕР

Как мы уже сделали со всей теоретической частью, связанной с NumPy isclose(). В этом разделе мы рассмотрим, как работает эта функция и как она помогает нам достичь желаемого результата. Мы начнем с примера элементарного уровня и постепенно перейдем к более сложным примерам.

1. Базовый пример Numpy isclose()

#input
import numpy as ppool
a=[2.67,2.56]
b=[2.68,2.56]
print(ppool.isclose(a,b))

Выход:

[False  True]

Выше мы можем увидеть фундаментальный пример ничего необычного для понимания того, как работает функция и ее синтаксическое применение. Во-первых, мы импортировали модуль NumPy, после чего мы определили 2 массива. Затем мы использовали наш синтаксис вместе с оператором print, чтобы получить желаемый результат. Здесь мы видим, что мы не использовали ни одного параметра допускаr. Из-за чего он вернет true только в том случае, если 2 значения совпадают.

2. Пример NumPy isclose() с относительным допуском

import numpy as ppool
a=[1.0001e10,1e-9]
b=[1e10,1e-8]
print(ppool.isclose(a,b,rtol=.01))

Выход:

[ True  True]

Другой пример, связанный с NumPy, – это close(). Здесь мы проделали те же шаги, что и в первом примере. Далее мы также использовали необязательный параметр relative tolerance и задали ему значение “.01″. Если мы хотим проверить результат, мы также можем это сделать. Здесь наше первое значение 1.0001e10, что эквивалентно 1000000, и мы должны сравнить его с 1e10, эквивалентным 10000000000. Теперь мы определили относительный допуск, равный максимуму 0,01. Здесь, если мы найдем относительный допуск для этого случая, мы получим .001, который меньше указанного href=”https://en.wikipedia.org/wiki/Conditional_(computer_programming)”>условие. Следовательно, истинно, вы можете аналогично проверить для 2-го случая. href=”https://en.wikipedia.org/wiki/Conditional_(computer_programming)”>условие. Следовательно, истинно, вы можете аналогично проверить для 2-го случая.

Почему бы вам, ребята, не попробовать с другим параметром atol и не сказать мне результат в этом случае.

NumPy isclose() vs allclose()

В этом разделе мы будем сравнивать 2 различные функции NumPy. Как мы уже обсуждали, NumPy isclose(). Здесь просто посмотрите на определение NumPy allclose(), эта функция помогает нам найти wheatear a 2 массива по элементам равны в пределах допуска. Теперь давайте сравним их стороны, что поможет нам в лучшем понимании.

NumPy isclose() NumPy allclose()
import numpy as popoola=[1e 10,1.002e10]b=[1e 10,1.003e10]print(pool.is закрыть(a,b)) import numpy as popoola=[1e 10,1.002e10]b=[1e 10,1.003e10]print(ppool.allclose(a,b))
[ Правда Ложь] Ложный

Из приведенной выше сравнительной таблицы мы можем заметить, что мы взяли один и тот же набор массивов, но конец отличается в 2 случаях. Это в первую очередь потому, что в то время как функция isclose возвращает логическое значение для каждого отдельного элемента после сравнения. Но во втором случае, когда мы используем all close, мы получаем одно логическое значение для любого числа элементов после сравнения.

NumPy isclose() vs mathis close()

В этом разделе мы рассмотрим еще одно сравнение, касающееся функции isclose (). Math-это встроенная библиотека python. Он предоставляет функцию disclose, которая используется для проверки того, близки ли 2 числа с плавающей запятой.

Ниже вы можете посмотреть таблицу, демонстрирующую работу 2-х функций

NumPy.isclose() Math.is закрыть()
import numpy as popoola=[1.05e15,1.002e10]b=[1.04e15,1.00277e10]print(p pool.is закрыть(a,b)) импорт math print(math.isclose(2.105, 2.0305))print(math.isclose(7.005, 7.005))
[Ложь Ложь] Ложь Истина

ДОЛЖЕН ЧИТАТЬ

  • Битоническая сортировка: Алгоритм и реализация в Python
  • Numpy Vstack в Python Для различных массивов
  • Numpy Pad Объяснен Примерами на Python
  • is in Function Объясняется Примерами в Python

ЗАКЛЮЧЕНИЕ

В этой статье мы рассмотрели NumPy isclose(). Кроме того, мы также рассмотрели его синтаксис и параметры. Для лучшего понимания мы рассмотрели несколько примеров. Мы варьировали синтаксис и рассматривали выходные данные для каждого случая. Мы можем сделать вывод, что Numpy isclose() помогает нам сравнивать два разных массива в пределах допуска.

Надеюсь, эта статья смогла развеять все сомнения. Но если у вас есть какие-либо нерешенные вопросы, не стесняйтесь писать их ниже в разделе комментариев. Прочитав это, почему бы не прочитать о функции квадратного корня далее.