Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

NumPy remainder() Function



The NumPy remainder() function is used to return the element-wise remainder of division. It performs modulo division similar to mod() function but guarantees the sign of the result is the same as the divisor.

It calculates the remainder after dividing each element in the first array by the corresponding element in the second array (or by a scalar). This function handles broadcasting for arrays of different shapes.

Syntax

Following is the syntax of the NumPy remainder() function −

numpy.remainder(x1, x2, /, out=None, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj])

Parameters

This function accepts the following parameters −

  • x1: The dividend input array. It is the array whose elements will be divided by the elements of x2.
  • x2: The divisor input array. Like x1, it should have the same shape as x1, or be broadcastable to a common shape.
  • out (optional): A location into which the result is stored. If provided, it must have a shape that the inputs broadcast to. If not provided or None, a freshly-allocated array is returned.
  • where (optional): This condition is broadcast over the input. At locations where the condition is True, the out array will be set to the ufunc result. Otherwise, it will retain its original value.
  • casting (optional): Controls what kind of data casting may occur. Defaults to 'same_kind'.
  • order (optional): Controls the memory layout order of the result. 'C' means C-order, 'F' means Fortran-order, 'A' means 'F' if inputs are all F, 'C' otherwise, 'K' means match the layout of the inputs as closely as possible.
  • dtype (optional): The type of the returned array and of the accumulator in which the division is performed. The dtype of x1 and x2 is used by default unless dtype is specified.
  • subok (optional): If True, then sub-classes will be passed-through, otherwise the returned array will be forced to be a base-class array.

Return Value

This function returns the element-wise remainder of the division of x1 by x2. If out is provided, it returns a reference to out. Unlike mod() function, the sign of the result will match the sign of the divisor.

Example: Basic Usage of remainder() Function

In the following example, we create two 1-dimensional arrays and use the remainder() function to perform element-wise remainder operation −

import numpy as np

# Creating two 1-dimensional arrays
arr1 = np.array([5, 9, 11, 14])
arr2 = np.array([3, 4, 5, 6])

# Performing element-wise remainder
result = np.remainder(arr1, arr2)
print(result)

Following is the output obtained −

[2 1 1 2] 

Example: Remainder with Broadcasting

In this example, we demonstrate the use of broadcasting with the remainder() function. We create a 2-dimensional array and calculate the remainder when it is divided by a 1-dimensional array −

import numpy as np

# Creating a 2-dimensional array
arr1 = np.array([[5, 9, 11], [14, 21, 29]])

# Creating a 1-dimensional array
arr2 = np.array([3, 4, 5])

# Performing element-wise remainder with broadcasting
result = np.remainder(arr1, arr2)
print(result)

This will produce the following result −

[[2 1 1]
 [2 1 4]]

Example: Remainder with Scalar

In this example, we raise all elements of an array and calculate their remainder with a scalar value −

import numpy as np

# Creating a 1-dimensional array
arr = np.array([5, 9, 11, 14])

# Performing remainder with a scalar value 3
result = np.remainder(arr, 3)
print(result)

Following is the output of the above code −

[2 0 2 2]

Example: Remainder with Negative Values

In this example, we calculate the remainder of negative numbers −

import numpy as np

# Creating a 1-dimensional array with negative values
arr = np.array([-5, -9, -11, -14])

# Performing remainder with a scalar value 3
result = np.remainder(arr, 3)
print(result)

The output obtained is as shown below −

[ 1 0 1 1]
numpy_arithmetic_operations.htm
Advertisements