numpy.dot() Python

numpy.dot(vektorius_a, vektorius_b, out = Nėra) grąžina vektorių a ir b taškinę sandaugą. Jis gali apdoroti 2D matricas, tačiau laiko juos matricomis ir atliks matricos dauginimą. N matmenų atveju tai yra paskutinės a ašies ir nuo antros iki paskutinės b ašies sandauga:

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

Parametrai

    vector_a : [panašus į masyvą], jei a yra kompleksinis, jo kompleksinis konjugatas naudojamas taško sandaugai apskaičiuoti. vector_b : [masyvo_like] jei b yra kompleksinis, jo kompleksinis konjugatas naudojamas taškinei sandaugai apskaičiuoti. out : [masyvas, pasirenkamas] išvesties argumentas turi būti gretimas su C, o jo dtype turi būti dtype, kuris būtų grąžintas taškui (a, b).

Taškas Vektorių a ir b sandauga. jei vektorius_a ir vektorius_b yra 1D, tada grąžinamas skaliaras

1 kodas:

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

Išvestis:

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 

2 kodas:

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 : '> , product)> product> => geek.dot(vector_b, vector_a)> print> (> ' Dot Product : '> , product)> '''> Code 2 : as normal matrix multiplication> '''>

Išvestis:

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