Open In App

numpy.dot() in Python

Improve
Improve
Like Article
Like
Save
Share
Report

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




# Python Program illustrating
# numpy.dot() method
 
import numpy as geek
 
# Scalars
product = geek.dot(5, 4)
print("Dot Product of scalar values  : ", product)
 
# 1D array
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




# Python Program illustrating
# numpy.dot() method
 
import numpy as geek
 
# 1D array
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)
 
"""
Code 2 : as normal matrix multiplication
"""


Output:

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

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

 



Last Updated : 18 Nov, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads