numpy.mod

numpy.mod(x1, x2, *ufunc_args) = <ufunc 'mod'>

Функция mod() поэлементно вычисляет остаток от деления значений массива x1 на значения массива x2.

Данная функция является эквивалентной команде x1%x2 и является аналогом оператора % т.е. знак результата такой же как и у делителя x2, но в NumPy этот оператор перегружен таким образом, что бы вычисление остатка от деления выполнялось поэлементно в случае одинаковых форм входных массивов, а в случае разных форм, выполнялся механизм транслирования массивов.

Однако, numpy.mod() является универсальной функцией, т.е. поддерживает целый ряд параметров, которые позволяют оптимизировать ее работу в зависимости от специфики алгоритма, в котором она необходима.

Параметры:
x1, x2 - числа, массивы или подобные массивам объекты
Входные данные, где x1 - делимое, x2 - делитель.
*ufunc_args - аргументы универсальной функции
Аргументы, позволяющие настроить и оптимизировать работу функции (подробнее см. универсальные функции).
Возвращает:
результат - массив NumPy или вещественное число
Массив чисел, которые являются остатками от деления соответствующих элементов из x1 и x2. Возвращает число, если x1 и x2 являются числами.
Смотрите так же: remainder, divmod, floor_divide, modf, fmod


Примеры

>>> import numpy as np
>>> 
>>> #  Возвращает 0 если x2 = 0:
... np.mod(10, 0)
__main__:2: RuntimeWarning: divide by zero encountered in remainder
0
>>> 
>>> a = np.array([10, -10, 10, -10])
>>> b = np.array([3, 3, -3, -3])
>>> 
>>> a%b
array([ 1,  2, -2, -1], dtype=int32)
>>> 
>>> np.mod(a, b)
array([ 1,  2, -2, -1], dtype=int32)
>>> 
>>> np.mod(0.23, 0.07)
0.01999999999999999