A Python numpy modulja funkciót biztosít két tömb pontszorzatának végrehajtására.
- Ha mind az 'a', mind a 'b' tömb egydimenziós tömb, akkor a dot() függvény végrehajtja a vektorok belső szorzatát (komplex konjugáció nélkül).
- Ha mind az 'a', mind a 'b' tömb kétdimenziós tömb, a dot() függvény végrehajtja a mátrixszorzást. De mátrixszorzáshoz használja a szőnyeg vagy 'a' @ 'b' előnyös.
- Ha az 'a' vagy a 'b' 0-dimenziós (skalár), a dot() függvény hajtja végre a szorzást. Továbbá a használata numpy.multiply(a, b) vagy a *b módszer előnyben részesítendő.
- Ha 'a' egy N-dimenziós tömb, 'b' pedig egydimenziós tömb, akkor a dot() függvény végrehajtja az összegszorzatot a és b utolsó tengelye felett.
- Ha 'a' egy M-dimenziós tömb, és 'b' egy N-dimenziós tömb (ahol N>=2), akkor a dot() függvény végrehajtja az összegszorzatot 'a' és a második tengelye felett. - 'b' utolsó tengelyéig:
dot(a, b)[i,j,k,n] = sum(a[i,j,:] * b[k,:,n])
Szintaxis
numpy.dot(a, b, out=None)
Paraméterek
a: array_like
Ez a paraméter határozza meg az első tömböt.
b: array_like
java string formátum hosszú
Ez a paraméter határozza meg a második tömböt.
kimenet: ndarray (opcionális)
Ez egy kimeneti argumentum. Pontosan olyan típusúnak kell lennie, amelyet visszaküldenek, ha nem használták. Különösen meg kell felelnie a teljesítményjellemzőknek, azaz tartalmaznia kell a megfelelő típust, azaz C-vel szomszédosnak kell lennie, és a dtype-nak az a dtype kell lennie, amelyet a pont(a,b) esetén vissza kell adni. Így, ha ezeknek a meghatározott feltételeknek nem felel meg, kivételt vet fel.
Visszatér
Ez a függvény 'a' és 'b' pontszorzatát adja vissza. Ez a függvény skalárt ad vissza, ha „a” és „b” egyaránt skalár vagy egydimenziós; ellenkező esetben egy tömböt ad vissza. Ha „out” van megadva, akkor visszaadjuk.
java oktatóanyag kezdőknek
Felemeli
A ValueError akkor fordul elő, ha „a” utolsó dimenziója nem azonos méretű „b” második és utolsó dimenziójával.
1. példa:
import numpy as np a=np.dot(6,12) a
Kimenet:
72
2. példa:
import numpy as np a=np.dot([2j, 3j], [5j, 8j]) a
Kimenet:
(-34+0j)
3. példa:
import numpy as np a = [[1, 2], [4, 1]] b = [[4, 11], [2, 3]] c=np.dot(a, b) c
Kimenet:
konvertálja string-be java
array([[ 8, 17], [18, 47]])
A fenti kódban
- Importáltuk a numpy-t np aliasnévvel.
- Létrehoztunk két 2-dimenziós tömböt. a ' és ' b '.
- Deklaráltuk a ' változót c ' és hozzárendelte a visszaadott értékét np.dot() funkció. Végül megpróbáltuk kinyomtatni a ' c '.
A kimenetben a mátrixszorzatot tömbként jeleníti meg.
4. példa:
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
Kimenet:
499128 499128
A fenti kódban
java vs c++
- Importáltuk a numpy-t np aliasnévvel.
- Létrehoztunk két tömböt a ' és ' b ' használva np.arange() függvényt, és módosítsa mindkét tömb alakját a reshape() függvény segítségével.
- Deklaráltuk a ' változót c ' és hozzárendelte a visszaadott értékét np.dot() funkció
- Végül megpróbáltuk kinyomtatni a c ' értéket.
A kimenetben a mátrixszorzatot tömbként jeleníti meg.