logo

numpy.dot() u Pythonu

Modul numpy Pythona pruža funkciju za izvođenje točkastog umnožaka dva niza.

  • Ako su oba polja 'a' i 'b' jednodimenzionalna polja, funkcija dot() izvodi unutarnji produkt vektora (bez kompleksne konjugacije).
  • Ako su oba polja 'a' i 'b' dvodimenzionalna polja, funkcija dot() izvodi matrično množenje. Ali za korištenje matričnog množenja otirač ili 'a' @ 'b' je poželjan.
  • Ako su 'a' ili 'b' 0-dimenzionalni (skalarni), funkcija dot() izvodi množenje. Također, korištenje numpy.multiply(a, b) ili a *b metoda je poželjna.
  • Ako je 'a' N-dimenzionalni niz, a 'b' je 1-dimenzionalni niz, tada funkcija dot() izvodi umnožak zbroja preko zadnje osi a i b.
  • Ako je 'a' M-dimenzionalni niz, a 'b' N-dimenzionalni niz (gdje je N>=2), tada funkcija dot() izvodi umnožak zbroja preko zadnje osi 'a' i druge osi -do zadnje osi 'b':
 dot(a, b)[i,j,k,n] = sum(a[i,j,:] * b[k,:,n]) 

Sintaksa

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

Parametri

a: sličan_nizu

Ovaj parametar definira prvi niz.

b: sličan_nizu

gdje je tipka za umetanje na tipkovnici laptopa

Ovaj parametar definira drugi niz.

izlaz: ndarray (opcionalno)

To je izlazni argument. Trebao bi biti točno onakav kakav bi bio vraćen u slučaju da nije korišten. Posebno treba zadovoljiti značajku izvedbe, tj. mora sadržavati pravi tip, tj. mora biti C-susjedan, a njegov dtype mora biti dtype koji bi se vratio za točku (a,b). Dakle, ako ne ispunjava navedene uvjete, pokreće iznimku.

maven spremište

Povratak

Ova funkcija vraća točkasti umnožak 'a' i 'b'. Ova funkcija vraća skalar ako su i 'a' i 'b' skalari ili jednodimenzionalni; inače vraća niz. Ako je dano 'out', onda se vraća.

Podiže

The ValueError događa se kada posljednja dimenzija 'a' nema istu veličinu kao pretposljednja dimenzija 'b'.

Primjer 1:

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

Izlaz:

 72 

Primjer 2:

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

Izlaz:

 (-34+0j) 

Primjer 3:

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

Izlaz:

pretvoriti int u string java
 array([[ 8, 17], [18, 47]]) 

U gornjem kodu

  • Uvezli smo numpy s alias imenom np.
  • Stvorili smo dva dvodimenzionalna niza ' a 'i' b '.
  • Deklarirali smo varijablu ' c ' i dodijelio vraćenu vrijednost od np.dot() funkcija.
  • Na kraju, pokušali smo ispisati vrijednost ' c '.

U izlazu prikazuje matrični umnožak kao niz.

Primjer 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 

Izlaz:

 499128 499128 

U gornjem kodu

java protiv c++
  • Uvezli smo numpy s alias imenom np.
  • Napravili smo dva polja ' a 'i' b ' koristeći np.arange() funkciju i promijenite oblik oba niza pomoću funkcije reshape().
  • Deklarirali smo varijablu ' c ' i dodijelio vraćenu vrijednost od np.dot() funkcija
  • Na kraju, pokušali smo ispisati ' c ' vrijednost.

U izlazu prikazuje matrični umnožak kao niz.