numpy.dot() in Python (original) (raw)

Last Updated : 18 Nov, 2022

numpy.dot(vector_a, vector_b, out = None) returns the dot product of vectors a and b. It can handle 2D arrays but considers them as matrix and will perform matrix multiplication. For N dimensions it is a sum-product over the last axis of a and the second-to-last of b :

dot(a, b)[i,j,k,m] = sum(a[i,j,:] * b[k,:,m])   Parameters

  1. vector_a : [array_like] if a is complex its complex conjugate is used for the calculation of the dot product.
  2. vector_b : [array_like] if b is complex its complex conjugate is used for the calculation of the dot product.
  3. out : [array, optional] output argument must be C-contiguous, and its dtype must be the dtype that would be returned for dot(a,b).

Dot Product of vectors a and b. if vector_a and vector_b are 1D, then scalar is returned

Code 1:

Python

import numpy as geek

product = geek.dot( 5 , 4 )

print ( "Dot Product of scalar values : " , product)

vector_a = 2 + 3j

vector_b = 4 + 5j

product = geek.dot(vector_a, vector_b)

print ( "Dot Product : " , product)

Output:

Dot Product of scalar values : 20 Dot Product : (-7+22j)

How Code1 works ?

vector_a = 2 + 3j vector_b = 4 + 5j

now dot product

= 2(4 + 5j) + 3j(4 +5j) = 8 + 10j + 12j - 15 = -7 + 22j

Code 2:

Python

import numpy as geek

vector_a = geek.array([[ 1 , 4 ], [ 5 , 6 ]])

vector_b = geek.array([[ 2 , 4 ], [ 5 , 2 ]])

product = geek.dot(vector_a, vector_b)

print ( "Dot Product : \n" , product)

product = geek.dot(vector_b, vector_a)

print ( "\nDot Product : \n" , product)

Output:

Dot Product : [[22 12] [40 32]]

Dot Product : [[22 32] [15 32]]