numpy.true_divide() в Python: как получить истинное деление массива по элементам
Функция numpy.true_divide()
в Python используется для истинного поэлементного деления двух массивов и аналогична оператору «/
». Однако он предназначен для более гибкой и точной обработки деления, особенно при работе с целочисленными или логическими массивами.
В этой статье мы подробно разберемся с Python numpy.true_divide()
, используя его синтаксис и различные примеры. Давайте начнем.
Синтаксис функции numpy.true_divide()
Давайте начнем с понимания основных составляющих функции numpy.true_divide()
с помощью ее синтаксиса, приведенного ниже.
Синтаксис:
numpy.true_divide(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None)
Параметры:
- x1: это массив числителя или скалярное значение.
- x2: это массив знаменателя или скалярное значение.
- out (необязательно): это необязательный параметр, указывающий место, где должен храниться результат. Если не указано, будет создан новый массив.
- where (необязательно): этот параметр используется для условного выполнения. Если указано, в результат будут включены только те элементы, для которых условие имеет значение
True
.
- casting (необязательно): этот параметр определяет, какой тип приведения данных может происходить. По умолчанию установлено значение «
same_kind
», что означает, что разрешено только приведение типов между похожими типами (например, между числами с плавающей запятой).
- order (необязательно): определяет расположение результата в памяти. По умолчанию установлено значение «
K
», что означает, что порядок определяется расположением памяти входного массива.
- dtype (необязательно): этот параметр позволяет нам установить тип данных выходного массива. Если не указано, оно определяется типами данных входных массивов.
Выходит:
Функция numpy.true_divide()
возвращает массив той же формы, что и входные массивы, где каждый элемент является результатом деления соответствующих элементов в x1
на x2
. По умолчанию элементы выходного массива представляют собой числа с плавающей запятой.
Примеры функции numpy.true_divide()
Давайте посмотрим примеры использования функции Python numpy.true_divide()
для деления скаляров, массивов и массива на скаляр.
Разделение скаляров
Давайте сначала начнем с простого примера. Здесь мы передадим оба входных параметра: x1
и x2
в качестве скаляров в функцию numpy.true_divide()
.
import numpy as np
sc1 = 8
sc2 = 2
result= np.true_divide(sc1, sc2)
print(result)
В приведенном выше коде мы сначала импортировали библиотеку NumPy как np и взяли два скалярных значения: sc1
и sc2
. Мы передали эти значения в функцию numpy.true_divide()
, чтобы выполнить деление sc1
на sc2
.
Выход:
В выводе мы видим, что sc1
разделили на sc2
и в результате получили 4,0
. Здесь мы получили 4,0
вместо 4
, потому что функция numpy.true_divide()
по умолчанию возвращает значения с плавающей запятой, даже если в результате деления получается целое число.
Разделение одномерных массивов
В этом примере мы передадим два одномерных массива в качестве входных данных в функцию numpy.true_divide()
, чтобы можно было выполнить поэлементное деление между массивами.
import numpy as np
ar1 = np.array([10, 20, 30])
ar2 = np.array([2, 4, 6])
result = np.true_divide(ar1, ar2)
print(result)
Здесь мы создали два одномерных массива: ar1
и ar2
, используя библиотеку NumPy, затем передали эти массивы в функцию numpy.true_divide()
, которая дает нам массив той же формы, выполняя поэлементное деление между ar1
и ar2
. означает, что первый элемент массива ar1
будет разделен на первый элемент массива ar2
и так далее.
Выход:
Разделение 2D-массивов
В этом примере мы возьмем наши входные массивы как двумерный массив и передадим их в функцию numpy.true_divide()
, чтобы получить поэлементное деление.
import numpy as np
ar1 = np.array([[1, 2, 3], [4, 5, 6]])
ar2 = np.array([[2, 2, 2], [3, 3, 3]])
result = np.true_divide(ar1, ar2)
print(result)
Здесь мы создали два 2D-массива: ar1
и ar2
, используя библиотеку NumPy. Затем мы передали их в функцию numpy.true_divide()
, чтобы выполнить поэлементное разделение между ними.
Выход:
Деление 1D-массива на скаляр
В этом примере мы выберем первый вход как одномерный массив, а второй вход как скалярное значение, а затем передадим их оба в функцию numpy.true_divide()
, где скалярное значение будет делить каждый элемент одномерного массива. в результате получается одномерный массив той же формы.
import numpy as np
ar = np.array([2, 4, 5])
sc= 10
result = np.true_divide(ar, sc)
print(result)
Выход:
В выводе мы видим, что скалярное значение sc
, равное 10
, разделило каждый элемент массива ar, например, первый элемент массива был 2
, разделенным на 10
, что дает нам 0,2
и так далее.
Деление 2D-массива на скаляр
Здесь единственное отличие от приведенного выше примера заключается в том, что мы возьмем двумерный массив вместо одномерного массива.
import numpy as np
ar = np.array([[10, 20, 30], [40, 50, 60]])
sc = 2
result = np.true_divide(ar, sc)
print(result)
Выход:
Заключение
Теперь, когда мы подошли к концу этой статьи, надеемся, что она дала четкое представление о различных способах нахождения поэлементного деления скалярных значений, а также массивов с помощью функции numpy.true_divide()
из Python NumPy
. библиотека. Для тех, кто хочет продвинуться в Python, на CodeforGeek есть масса других интересных и не менее образовательных статей, которые могут оказаться весьма полезными, поэтому обязательно ознакомьтесь с ними.