vectorization is required in python when we are dealing with matrics. With the evolution of deep learning it has gained more lime-light.
Here is the execution time comparison of vectorised and non vectorised code.
# initialisation of array
import numpy as np a=np.array([1,2,3,4]) print(a)
[1 2 3 4]
# initialise numpy array
import time A = np.random.rand(1000000) B = np.random.rand(1000000)
# calculating execution time using vectorization tic = time.time() C =np.dot(A, B) toc =time.time()
print('total time taken in vectorised multiplication' + str(toc-tic) + 'mili-seconds')
total time taken in vectorised multiplication 0.002000093460083008 mili-seconds
# calculating execution time using non vectorization codetic = time.time() for i in range(1000000): C = C +A[i]*B[i] print(C) toc= time.time() print('total time taken in non-vectorised code'+ str(toc-tic) +' mili seconds')
749296.5132501889 total time taken in non-vectorised code0.6779999732971191 mili seconds.