logo

numpy.dot() în Python

Modulul numpy din Python oferă o funcție pentru a realiza produsul punctual a două matrice.

  • Dacă ambele tablouri „a” și „b” sunt matrice unidimensionale, funcția dot() realizează produsul interior al vectorilor (fără conjugare complexă).
  • Dacă ambele tablouri „a” și „b” sunt matrice bidimensionale, funcția dot() efectuează înmulțirea matricei. Dar pentru multiplicarea matricei folosiți matmul sau „a” @ „b” este de preferat.
  • Dacă „a” sau „b” este 0-dimensional (scalar), funcția dot() efectuează înmulțirea. De asemenea, utilizarea de numpy.multiplicare(a, b) sau a *b metoda este de preferat.
  • Dacă „a” este o matrice N-dimensională și „b” este o matrice unidimensională, atunci funcția dot() realizează produsul sumă pe ultima axă a lui a și b.
  • Dacă „a” este o matrice M-dimensională și „b” este o matrice N-dimensională (unde N>=2), atunci funcția dot() realizează produsul sumă pe ultima axă a lui „a” și a doua -până la ultima axă a lui „b”:
 dot(a, b)[i,j,k,n] = sum(a[i,j,:] * b[k,:,n]) 

Sintaxă

 numpy.dot(a, b, out=None) 

Parametrii

a: array_like

Acest parametru definește primul tablou.

b: array_like

cum să recuperezi aplicațiile ascunse

Acest parametru definește a doua matrice.

hartă arborelui

ieșire: ndarray (opțional)

Este un argument de ieșire. Ar trebui să aibă tipul exact care ar fi returnat în cazul în care nu a fost folosit. În special, ar trebui să îndeplinească caracteristica de performanță, adică trebuie să conțină tipul potrivit, adică trebuie să fie C-contiguu, iar dtype-ul său trebuie să fie dtype care ar fi returnat pentru punctul (a,b). Astfel, dacă nu îndeplinește aceste condiții specificate, ridică o excepție.

Se intoarce

Această funcție returnează produsul punctual dintre „a” și „b”. Această funcție returnează un scalar dacă „a” și „b” sunt ambele scalari sau 1-dimensionale; în caz contrar, returnează o matrice. Dacă este dat „out”, atunci este returnat.

Creșteri

The ValueError apare atunci când ultima dimensiune a lui „a” nu are aceeași dimensiune ca și penultima dimensiune a lui „b”.

Exemplul 1:

 import numpy as np a=np.dot(6,12) a 

Ieșire:

 72 

Exemplul 2:

 import numpy as np a=np.dot([2j, 3j], [5j, 8j]) a 

Ieșire:

 (-34+0j) 

Exemplul 3:

 import numpy as np a = [[1, 2], [4, 1]] b = [[4, 11], [2, 3]] c=np.dot(a, b) c 

Ieșire:

convertiți int în șir de caractere java
 array([[ 8, 17], [18, 47]]) 

În codul de mai sus

  • Am importat numpy cu numele de alias np.
  • Am creat două matrice bidimensionale ' A ' și ' b '.
  • Am declarat variabila ' c ' și a atribuit valoarea returnată a np.dot() funcţie.
  • În cele din urmă, am încercat să tipărim valoarea lui ' c '.

În rezultat, arată produsul matricei ca o matrice.

Exemplul 4:

 import numpy as np x = np.arange(3*4*5*6).reshape((3,4,5,6)) y = np.arange(3*4*5*6)[::-1].reshape((5,4,6,3)) p=np.dot(a, b)[2,3,2,1,2,2] q=sum(a[2,3,2,:] * b[1,2,:,2]) p q 

Ieșire:

 499128 499128 

În codul de mai sus

java vs c++
  • Am importat numpy cu numele de alias np.
  • Am creat două matrice A ' și ' b 'folosind np.arange() funcția și modificați forma ambelor matrice folosind funcția reshape().
  • Am declarat variabila ' c ' și a atribuit valoarea returnată a np.dot() funcţie
  • În cele din urmă, am încercat să tipărim „ c 'valoare.

În rezultat, arată produsul matricei ca o matrice.