mars.tensor.mod#

mars.tensor.mod(x1, x2, out=None, where=None, **kwargs)[来源]#

返回逐元素的除法余数。

计算与floor_divide函数互为补数的余数。它等价于Python的取模运算符``x1 % x2``,并且与除数x2具有相同的符号。与np.remainder等效的MATLAB函数是mod

警告

这不应该和以下内容混淆:

  • Python 3.7 的 math.remainder 和 C 的 remainder,计算 IEEE 余数,它们是 round(x1 / x2) 的补充。

  • MATLAB rem 函数或 C % 运算符是 int(x1 / x2) 的补充。

Parameters
  • x1 (array_like) – 被投资的数组。

  • x2 (array_like) – 除数数组。

  • out (Tensor, None, 或 tupleTensor 和 None, 可选) – 结果存储的位置。如果提供,它必须具有和输入相同的广播形状。如果未提供或None,将返回一个新分配的张量。元组(仅作为关键字参数可能)必须具有与输出数量相等的长度。

  • where (array_like, 可选) – 值为 True 表示在该位置计算 ufunc,值为 False 表示保持输出中的该值不变。

  • **kwargs

Returns

y – 商的逐元素余数 floor_divide(x1, x2)。如果 x1x2 都是标量,则返回一个标量。

Return type

张量

另请参阅

floor_divide

相当于 Python // 运算符。

divmod

同时进行地板除法和余数运算。

fmod

相当于 MATLAB rem 函数。

divide, floor

备注

x2 为 0 且 x1x2 都是(张量的)整数时返回 0。

示例

>>> import mars.tensor as mt
>>> mt.remainder([4, 7], [2, 3]).execute()
array([0, 1])
>>> mt.remainder(mt.arange(7), 5).execute()
array([0, 1, 2, 3, 4, 0, 1])