numpy.remainder

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

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

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

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

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

Примеры

>>> import numpy as np
>>> 
>>> #  Возвращает 0 если x2 = 0:
... np.remainder(10, 0)
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.remainder(a, b)
array([ 1,  2, -2, -1], dtype=int32)
>>> 
>>> np.mod(a, b)
array([ 1,  2, -2, -1], dtype=int32)
>>> 
>>> np.remainder(0.23, 0.07)
0.01999999999999999