numpy.dot() in Python

numpy.dot(vector_a, vector_b, out = None) returns the dot product of vectors a and b. It can handle 2D arrays but considering 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).

Return –



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

Code 1 –

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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)

chevron_right


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 –

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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
"""

chevron_right


Output –

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

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

References –
https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.dot.html
.
This article is contributed by Mohit Gupta_OMG 😀. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.



My Personal Notes arrow_drop_up


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.