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.