Reference Materials
Certification Courses
Created with over a decade of experience and thousands of feedback.
NumPy cross()
In this tutorial, you will learn about the numpy.cross() method with the help of examples.
The numpy.cross() method computes the cross product of two vectors.
Example
import numpy as np
# create two input arrays
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
# compute the cross product of array1 and array2
result = np.cross(array1, array2)
print(result)
# Output:[-3 6 -3]
cross() Syntax
The syntax of the numpy.cross() method is:
numpy.cross(a, b, axisa = -1, axisb = -1, axisc = -1, axis = None)
cross() Arguments
The numpy.cross() method takes following arguments:
a- the first input arrayb- the second input arrayaxisa(optional) - the axis along which to take the cross product for aaxisb(optional) - the axis along which to take the cross product for baxisc(optional) -the axis along which to take the cross product for caxis(optional) - if specified, it overrides axisa, axisb, and axisc
Note: All the optionals arguments here take integer values.
cross() Return Value
The numpy.cross() method returns an array containing the cross product of a and b.
Example 1: Find the Cross Product of Two Arrays
import numpy as np
# create two input arrays
array1 = np.array([1, 2, 3])
array2 = np.array([4, 5, 6])
# compute the cross product of array1 and array2
result = np.cross(array1, array2)
print(result)
Output
[-3 6 -3]
Here, we have two input arrays:
array1 = [1, 2, 3]
array2 = [4, 5, 6]
Now to compute the cross product, we apply the following formula:
cross product = (array1[1] * array2[2] - array1[2] * array2[1],
array1[2] * array2[0] - array1[0] * array2[2],
array1[0] * array2[1] - array1[1] * array2[0])
Then, substituting the values from the input arrays:
cross product = (2 * 6 - 3 * 5,
3 * 4 - 1 * 6,
1 * 5 - 2 * 4)
Finally, after evaluating the expressions:
cross product = (-3, 6, -3)
Therefore, the output array of np.cross(array1, array2) is [ -3, 6, -3].
Example 2: Use of axisa, axisb, axisc Arguments in cross()
import numpy as np
# create two input arrays
array1 = np.array([[1, 2, 3], [4, 5, 6]])
array2 = np.array([[7, 8, 9], [10, 11, 12]])
# compute the cross product
# along the first axis of each array
resultAxis = np.cross(array1, array2, axisa = 1, axisb = 1, axisc = 1)
print("Result with axisa = 1, axisb = 1, axisc = 1:")
print(resultAxis)
Output
Result with axisa = 1, axisb = 1, axisc = 1: [[-6 12 -6] [-6 12 -6]]
Here, to compute the cross product along axis 1, we consider the vectors along axis 1 of both array1 and array2:
array1 = ([[1, 2, 3],
[4, 5, 6]])
array2 = ([[7, 8, 9],
[10, 11, 12]])
For the first row of array1 and array2, the cross product is calculated as:
[1, 2, 3] × [7, 8, 9] = [-6, 12, -6]
Similarly, for the second row of array1 and array2, the cross product is calculated as:
[4, 5, 6] × [10, 11, 12] = [-6, 12, -6]
Example 3: Use of axis Argument in cross()
import numpy as np
# create two input arrays
array1 = np.array([[1, 2, 3], [4, 5, 6]])
array2 = np.array([[7, 8, 9], [10, 11, 12]])
# compute the cross product along axis 0
axis0 = np.cross(array1, array2, axis = 0)
print("Result with axis = 0:")
print(axis0)
# compute the cross product along axis 1
axis1 = np.cross(array1, array2, axis = 1)
print("\nResult with axis = 1:")
print(axis1)
Output
Result with axis=0: [-18 -18 -18] Result with axis=1: [[-6 12 -6] [-6 12 -6]]
Here,
axis = 0- output[-18, -18, -18]represents the cross product along the column vectors of array1 and array2.axis = 1- output[[ -6, 12, -6], [ -6, 12, -6]]represents the cross product along the row vectors of array1 and array2.