NumPy | cross method
Start your free 7-days trial now!
Numpy's cross(~)
method computes the cross product of two input arrays.
Parameters
1. a
| array-like
The first input array.
2. b
| array-like
The second input array.
3. axisa
| int
| optional
The axis along which to use to compute the cross product for array a
. You only need to consider this if you're dealing with multi-dimensional arrays (e.g. 2D arrays). By default, the last axis will be used.
4. axisb
| int
| optional
The axis along which to use to compute the cross product for array b
. You only need to consider this if you're dealing with multi-dimensional arrays (e.g. 2D arrays). By default, the last axis will be used.
Return value
A Numpy array that represents the cross product of the two input arrays.
Examples
Basic usage
x = [1, 2, 3]y = [4, 5, 6]np.cross(x, y)
array([-3, 6, -3])
Cross product of size-two arrays
We can also compute the cross product of arrays of size two:
x = [1, 2]y = [3, 4]np.cross(x,y)
array(-2)
Here, we've computed the dot product (1*4)-(2*3)=-2
.
Cross products of size-two array and size-three array
x = [1, 2, 3]y = [4, 5]np.cross(x,y)
array([-15, 12, -3])
Here, y
is assumed to be [4, 5, 0]
, that is, the z-component is padded with 0.
Cross products of 2D arrays
x = [[1,2,3], [4,5,6]]y = [[5,6], [7,8], [9,10]]np.cross(x, y, axisa=1, axisb=0) # axis=1 <- row wise, axis=0 <- column-wise
array([[-3, 6, -3], [ 2, -4, 2]])
To make it easier for your eyes, here's x
and y
prettified:
x = [[1, 2, 3], y = [[5, 6] [4, 5, 6]] [7, 8] [9, 10]]
What we've done here is computed the following:
np.cross([1,2,3], [5,7,9]) # [-3, 6, -3]np.cross([4,5,6], [6,8,10]) # [ 2, -4, 2]