The subtract() function performs element-wise subtraction of two arrays.
Example
import numpy as np
# create two arrays
array1 = np.array([4, 5, 6])
array2 = np.array([2, 1, 3])
# perform element-wise subtraction of the two arrays
result = np.subtract(array1, array2)
print(result)
# Output: [2 4 3]
subtract() Syntax
The syntax of subtract() is:
numpy.subtract(x1, x2, out = None, where = True, dtype = None)
subtract() Arguments
The subtract() function takes following arguments:
x1andx2- two input arrays or scalars to be subtractedout(optional) - the output array where the result will be storedwhere(optional) - a boolean array or condition specifying which elements to subtractdtype(optional) - data type of the output array
subtract() Return Value
The np.subtract() function returns an array containing the result of element-wise subtraction between two arrays or between an array and a scalar value.
Example 1: Subtract a Scalar Value From a NumPy Array
import numpy as np
# create an array
arr = np.array([10, 20, 30])
# subtract a scalar value from the array
result = np.subtract(arr, 5)
print(result)
Output
[ 5 15 25]
Here, the np.subtract() function is used to subtract a scalar value of 5 from each element of the arr array.
Example 2: Use of out and where in subtract()
import numpy as np
# create two input arrays
array1 = np.array([10, 20, 30, 50])
array2 = np.array([1, 2, 3, 5])
# create a Boolean array as a condition for subtraction
condition = np.array([True, False, True, True])
# create an empty array to store the subtracted values
result = np.empty_like(array1)
# perform element-wise subtraction between array1 and array2,
# only where the condition is True and store output in result array
np.subtract(array1, array2, where=condition, out=result)
print(result)
Output
[ 9 0 27 45]
The output shows the result of the subtraction operation, where the elements from array1 and array2 are subtracted together only where the corresponding condition is True.
The second element in result is 0 because the corresponding condition value is False, and therefore, the subtraction does not take place for that element.
Here, out=result specifies that the output of np.subtract() should be stored in the result array
Example 3: Use of dtype Argument in subtract()
import numpy as np
# create two arrays
array1 = np.array([14, 25, 46])
array2 = np.array([7, 12, 23])
# subtract array2 from array1 with a floating-point data type
resultFloat = np.subtract(array1, array2, dtype=np.float64)
# subtract array2 from array1 with a integer data type
resultInt = np.subtract(array1, array2, dtype=np.int32)
print("Floating-point result:")
print(resultFloat)
print("\nInteger result:")
print(resultInt)
Output
Floating-point result: [ 7. 13. 23.] Integer result: [ 7 13 23]
Here, by specifying the desired dtype, we can control the data type of the output array according to our requirements.
Note: To learn more about the dtype argument, please visit NumPy Data Types.