NumPy multiply() Function



The NumPy multiply() function is used to perform element-wise multiplication between two arrays. It takes two input arrays (of the same shape or compatible shapes) and returns a new array with their corresponding elements multiplied.

This function supports broadcasting, meaning it can handle arrays of different shapes if they are compatible.

Syntax

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

numpy.multiply(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 first input array. Both arrays should have the same shape, or they must be broadcastable to a common shape.
  • x2: The second 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 elements are multiplied. 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 product of the input arrays x1 and x2. If out is provided, it returns a reference to out.

Example: Basic Usage of multiply() Function

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

import numpy as np

# Creating two 1-dimensional arrays
arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([5, 6, 7, 8])

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

Following is the output obtained −

[ 5 12 21 32]

Example: Multiplying Arrays with Broadcasting

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

import numpy as np

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

# Creating a 1-dimensional array
arr2 = np.array([10, 20, 30])

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

This will produce the following result −

[[10 40 90]
 [40 100 180]]

Example: Using the "out" Parameter

In this example, we use the out parameter to store the result of the multiplication in a specified array −

import numpy as np

# Creating two 1-dimensional arrays
arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([5, 6, 7, 8])

# Creating an output array
out_arr = np.empty(4)

# Performing element-wise multiplication and storing the result in out_arr
np.multiply(arr1, arr2, out=out_arr)
print(out_arr)

Following is the output of the above code −

[ 5. 12. 21. 32.]

Example: Using the "where" Parameter

In this example, we use the where parameter to conditionally perform the multiplication operation −

import numpy as np

# Creating two 1-dimensional arrays
arr1 = np.array([1, 2, 3, 4])
arr2 = np.array([5, 6, 7, 8])

# Creating a condition array
condition = np.array([True, False, True, False])

# Performing element-wise multiplication where the condition is True
result = np.multiply(arr1, arr2, where=condition)
print(result)

The output obtained is as shown below −

[ 5  0 21 16]
numpy_arithmetic_operations.htm
Advertisements