Prodotto scalare
Lezione 17 di 18 del corso Fondamenti di NumPy di Coddy.
Il prodotto scalare (noto anche come prodotto interno) è un'operazione dell'algebra lineare che prende due vettori della stessa dimensione (un vettore è una sequenza di numeri) e restituisce un singolo numero
Come funziona
Esempio 1
vector1 = [1, 2, 3]
vector2 = [4, 5, 6]
prodotto scalare di vector1 e vector2:
1 * 4 + 2 * 5 + 3 * 6 = 32
Esempio 2
Quando si moltiplicano i vettori, uno deve essere verticale (forma: (X, 1)) e l'altro deve essere orizzontale (forma: (1, X))
Vector1 =
| 5 | 2 | 1 | 8 |
Vector2 =
| 6 |
| 8 |
| 2 |
| 1 |
Il prodotto scalare è la somma dei prodotti dei numeri corrispondenti di ciascun vettore.
Prodotto scalare:
| 5*6 + 2*8 + 1*2 + 8*1 = 56 |
Prodotto scalare con Numpy
La sintassi in Numpy è np.dot()
Esempio 3
Prodotto scalare di due array Numpy 1D
ary1 = np.array([1, 4, 2])
ary2 = np.array([2, 5, 7])
np.dot(ary1, ary2) # 1*2 + 4*5 + 2*7
>>> 36Esempio 4
Prodotto scalare di un array Numpy 1D e uno scalare (un numero)
ary1 = np.array([1, 4, 2])
num1 = 5
np.dot(ary1, num)
>>> [ 5, 20, 10]Si comporta come se moltiplicassimo l'array per lo scalare: ary1 * 5
Se uno degli array è un array 2D, np.dot eseguirà una moltiplicazione tra matrici, argomento trattato nella prossima lezione.
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Sfida
FacileCrea una funzione chiamata calculate che riceva due liste Python ed esegua:
- res1 = Sottrazione delle due liste
- res2 = Moltiplicazione delle due liste
e restituisca il prodotto scalare di res1 e res2.
Provalo tu
import numpy as np
def calculate(lst1, lst2):Tutte le lezioni di Fondamenti di NumPy
2Creazione di array N-dimensionali
Dimensione superioreComprendere le formeRiempimento con valori fissiTipi NumPyIntervalloRimodellamentoEsercitati da solo: Compilatore Python online