logo

Jak vytvořit vektor v Pythonu pomocí NumPy

V tomto tutoriálu se naučíme, jak můžeme vytvořit vektor pomocí knihovny Numpy. Prozkoumáme také základní operace vektoru, jako je sčítání dvou vektorů, odečítání dvou vektorů, dělení dvou vektorů, násobení dvou vektorů, vektorový bodový součin a vektorový skalární součin.

poznámky pod čarou

Co je Vector?

Vektor je známý jako jednorozměrné pole. v Krajta , vektor je a jediný jednorozměrný pole seznamů a chová se stejně jako seznam v Pythonu. Podle Google vektor představuje směr i velikost; zejména určuje polohu jednoho bodu v prostoru vzhledem k druhému.

Vektory jsou ve strojovém učení velmi důležité, protože mají velikost a také směrové vlastnosti. Pojďme pochopit, jak můžeme vytvořit vektor v Pythonu.

Vytváření vektoru v Pythonu

Modul Python Numpy poskytuje numpy.array() metoda který vytváří jednorozměrné pole tj. vektor. Vektor může být horizontální nebo vertikální.

Syntax:

 np.array(list) 

Výše uvedená metoda přijímá seznam jako argument a vrací numpy.ndarray.

Pojďme pochopit následující příklad -

Příklad - 1: Horizontální vektor

 # Importing numpy import numpy as np # creating list list1 = [10, 20, 30, 40, 50] # Creating 1-D Horizontal Array vtr = np.array(list1) vtr = np.array(list1) print('We create a vector from a list:') print(vtr) 

Výstup:

 We create a vector from a list: [10 20 30 40 50] 

Příklad - 2: Vertikální vektor

 # Importing numpy import numpy as np # defining list list1 = [[12], [40], [6], [10]] # Creating 1-D Vertical Array vtr = np.array(list1) vtr = np.array(list1) print('We create a vector from a list:') print(vtr) 

Výstup:

 We create a vector from a list: [[12] [40] [ 6] [10]] 

Základní operace vektoru Pythonu

Po vytvoření vektoru nyní provedeme aritmetické operace s vektory.

Níže je uveden seznam základních operací, které můžeme provádět ve vektoru.

  • Aritmetický
  • Odčítání
  • Násobení
  • Divize
  • Tečkovaný produkt
  • Skalární násobení

Přidání dvou vektorů

Ve vektorovém sčítání probíhá elementově, což znamená, že sčítání bude probíhat element po elementu a délka by byla stejná jako u dvou aditivních vektorů.

Syntax:

 vector + vector 

Pojďme pochopit následující příklad.

Příklad -

 import numpy as np list1 = [10,20,30,40,50] list2 = [11,12,13,14,15] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create vector from a list 2:') print(vtr2) vctr_add = vctr1+vctr2 print('Addition of two vectors: ',vtr_add) 

Výstup:

 We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [11 12 13 14 15] Addition of two vectors: [21 32 43 54 65] 

Odečítání dvou vektorů

Odečítání se provádí stejně jako sčítání, postupuje po prvcích a prvky vektoru 2 se odečítají od vektoru 1. Pojďme pochopit následující příklad.

návrhový vzor tovární metody

Příklad -

 import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_sub = vtr1-vtr2 print('Subtraction of two vectors: ',vtr_sub) 

Výstup:

 We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Subtraction of two vectors: [5 18 26 37 49] 

Násobení dvou vektorů

Prvky vektoru 1 se vynásobí vektorem 2 a vrátí vektory stejné délky jako násobící vektory. Pojďme pochopit následující příklad.

Příklad -

 import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_mul = vtr1*vtr2 print('Multiplication of two vectors: ',vtr_mul) 

Výstup:

 We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Multiplication of two vectors: [ 50 40 120 120 50] 

Násobení se provádí následovně.

 vct[0] = x[0] * y[0] vct[1] = x[1] * y[1] 

První prvek vektoru 1 je vynásoben prvním prvkem odpovídajícího vektoru 2 a tak dále.

Dělení operace dvou vektorů

Při operaci dělení obsahuje výsledný vektor hodnotu podílu, která je získána dělením dvou prvků vektoru.

Pojďme pochopit následující příklad.

Příklad -

 import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_div = vtr1/vtr2 print('Division of two vectors: ',vtr_div) 

Výstup:

 We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Division of two vectors: [ 2. 10. 7.5 13.33333333 50. ] 

Jak můžeme vidět na výše uvedeném výstupu, operace dělení vrátila hodnotu podílu prvků.

Vektorový bodový produkt

Vektorový bodový součin funguje mezi dvěma sekvenčními vektory stejné délky a vrací jediný bodový součin. Budeme používat .tečka() způsob provedení bodového součinu. Stane se tak, jak je uvedeno níže.

 vector c = x . y = (x1 * y1 + x2 * y2) 

Pojďme pochopit následující příklad.

Příklad -

 import numpy as np list1 = [10,20,30,40,50] list2 = [5,2,4,3,1] vtr1 = np.array(list1) vtr2= np.array(list2) print('We create vector from a list 1:') print(vtr1) print('We create a vector from a list 2:') print(vtr2) vtr_product = vtr1.dot(vtr2) print('Dot product of two vectors: ',vtr_product) 

Výstup:

dhl znamená co
 We create vector from a list 1: [10 20 30 40 50] We create vector from a list 2: [5 2 4 3 1] Dot product of two vectors: 380 

Vektor-skalární násobení

V operaci skalárního násobení; vynásobíme skalár každou složkou vektoru. Pojďme pochopit následující příklad.

Příklad -

 import numpy as np list1 = [10,20,30,40,50] vtr1 = np.array(list1) scalar_value = 5 print('We create vector from a list 1:') print(vtr1) # printing scalar value print('Scalar Value : ' + str(scalar_value)) vtr_scalar = vtr1 * scalar_value print('Multiplication of two vectors: ',vtr_scalar) 

Výstup:

 We create vector from a list 1: [10 20 30 40 50] Scalar Value : 5 Multiplication of two vectors: [ 50 100 150 200 250] 

Ve výše uvedeném kódu je skalární hodnota vynásobená každým prvkem vektoru způsobem s * v = (s * v1, s * v2, s * v3).