logo

NumPy masīvu pamati

NumPy apzīmē Numerical Python. Tā ir Python bibliotēka, ko izmanto darbam ar masīvu. Programmā Python mēs izmantojam sarakstu masīvam, taču tā apstrāde notiek lēni. NumPy masīvs ir spēcīgs N-dimensiju masīva objekts, un to izmanto lineārās algebras, Furjē transformācijas un nejaušo skaitļu iespējās. Tas nodrošina masīva objektu daudz ātrāk nekā tradicionālie Python saraksti.

Masīvu veidi:

  1. Viendimensijas masīvs
  2. Daudzdimensiju masīvs

Viendimensijas masīvs:

Viendimensijas masīvs ir lineāra masīva veids.

Viendimensijas masīvs



Piemērs:

Python3
# importing numpy module import numpy as np # creating list list = [1, 2, 3, 4] # creating numpy array sample_array = np.array(list) print('List in python : ', list) print('Numpy Array in python :', sample_array)>


Izvade:

List in python : [1, 2, 3, 4] Numpy Array in python : [1 2 3 4]>

Pārbaudiet datu tipu sarakstam un masīvam:

Python3
print(type(list_1)) print(type(sample_array))>

Izvade:

>

Daudzdimensiju masīvs:

Dati daudzdimensiju masīvos tiek glabāti tabulas veidā.

Divdimensiju masīvs

virkne salīdzinājumā ar

Piemērs:

Python3
# importing numpy module import numpy as np # creating list  list_1 = [1, 2, 3, 4] list_2 = [5, 6, 7, 8] list_3 = [9, 10, 11, 12] # creating numpy array sample_array = np.array([list_1, list_2, list_3]) print('Numpy multi dimensional array in python
', sample_array)>

Izvade:

Numpy multi dimensional array in python [[ 1 2 3 4]  [ 5 6 7 8]  [ 9 10 11 12]]>

Piezīme: izmantot [ ] operatori iekšā numpy.array() daudzdimensionālam

Masīva anatomija:

1. Ass: Masīva ass apraksta indeksēšanas secību masīvā.

Asis 0 = viena dimensija

1. ass = divdimensiju

2. ass = trīsdimensiju

2. Forma: Elementu skaits kopā ar katru asi. Tas ir no kortedža.

Piemērs:

Python3
# importing numpy module import numpy as np # creating list  list_1 = [1, 2, 3, 4] list_2 = [5, 6, 7, 8] list_3 = [9, 10, 11, 12] # creating numpy array sample_array = np.array([list_1, list_2, list_3]) print('Numpy array :') print(sample_array) # print shape of the array print('Shape of the array :', sample_array.shape)>

Izvade:

Numpy array :  [[ 1 2 3 4]  [ 5 6 7 8]  [ 9 10 11 12]] Shape of the array : (3, 4)>

Piemērs:

Python3
import numpy as np sample_array = np.array([[0, 4, 2], [3, 4, 5], [23, 4, 5], [2, 34, 5], [5, 6, 7]]) print('shape of the array :', sample_array.shape)>

Izvade:

shape of the array : (5, 3)>

3. Rangs: Masīva rangs ir vienkārši tam esošo asu (vai izmēru) skaits.

Viendimensijas masīvam ir 1. rangs.

1. rangs

Divdimensiju masīvam ir 2. pakāpe.

2. rangs

4. Datu tipa objekti (dtype): Datu tipa objekti (dtype) ir gadījums numpy.dtype klasē. Tajā ir aprakstīts, kā jāinterpretē baiti fiksētā izmēra atmiņas blokā, kas atbilst masīva vienumam.

Piemērs:

Python3
# Import module import numpy as np # Creating the array  sample_array_1 = np.array([[0, 4, 2]]) sample_array_2 = np.array([0.2, 0.4, 2.4]) # display data type print('Data type of the array 1 :', sample_array_1.dtype) print('Data type of array 2 :', sample_array_2.dtype)>

Izvade:

Data type of the array 1 : int32 Data type of array 2 : float64>

Daži dažādi veidi, kā izveidot Numpy Array:

1. numpy.array() : Numpy masīva objektu programmā Numpy sauc par ndarray. Mēs varam izveidot ndarray, izmantojot numpy.array() funkciju.

Sintakse: numpy.masīvs(parametrs)

Piemērs:

Python3
# import module import numpy as np #creating a array arr = np.array([3,4,5,5]) print('Array :',arr)>

Izvade:

Array : [3 4 5 5]>

2. numpy.fromiter() : Funkcija fromiter() izveido jaunu viendimensiju masīvu no iterējama objekta.

Sintakse: numpy.fromiter(iterable, dtype, count=-1)

1. piemērs:

Python3
#Import numpy module import numpy as np # iterable iterable = (a*a for a in range(8)) arr = np.fromiter(iterable, float) print('fromiter() array :',arr)>

Izvade:

fromiter() masīvs: [ 0. 1. 4. 9. 16. 25. 36. 49.]

2. piemērs:

Python3
import numpy as np var = 'Geekforgeeks' arr = np.fromiter(var, dtype = 'U2') print('fromiter() array :', arr)>

Izvade:

fromiter() masīvs : ['G' 'e' 'e' 'k' 'f' 'o' 'r' 'g' 'e' 'e' 'k' 's']

3. numpy.arange() : Šī ir iebūvēta funkcija NumPy, kas atgriež vienmērīgi izvietotas vērtības noteiktā intervālā.

Sintakse: numpy.arange([sākt, ]pārtraukt, [solis, ]dtype=nav)

Piemērs:

Python3
import numpy as np np.arange(1, 20 , 2, dtype = np.float32)>

Izvade:

masīvs([ 1., 3., 5., 7., 9., 11., 13., 15., 17., 19.], dtype=float32)

4. numpy.linspace() : Šī funkcija atgriež vienmērīgi izvietotus skaitļus, kas ir norādīti starp divām robežām.

Sintakse: numpy.linspace(sākums, beigas, cipars = 50, beigu punkts = patiess, retstep = nepatiess, dtype = nav, ass = 0)

1. piemērs:

Python3
import numpy as np np.linspace(3.5, 10, 3)>

Izvade:

array([ 3.5 , 6.75, 10. ])>

2. piemērs:

Python3
import numpy as np np.linspace(3.5, 10, 3, dtype = np.int32)>

Izvade:

array([ 3, 6, 10])>

5. numpy.empty() : Šī funkcija izveido jaunu noteiktas formas un veida masīvu bez inicializācijas vērtības.

Sintakse: numpy.empty(forma, dtype=float, order='C')

Piemērs:

Python3
import numpy as np np.empty([4, 3], dtype = np.int32, order = 'f')>

Izvade:

array([[ 1, 5, 9],  [ 2, 6, 10],  [ 3, 7, 11],  [ 4, 8, 12]])>

6. numpy.ones(): Šī funkcija tiek izmantota, lai iegūtu jaunu noteiktas formas un veida masīvu, kas piepildīts ar tiem (1).

Sintakse: numpy.ones(forma, dtype=nav, order='C')

Piemērs:

Python3
import numpy as np np.ones([4, 3], dtype = np.int32, order = 'f')>

Izvade:

array([[1, 1, 1],  [1, 1, 1],  [1, 1, 1],  [1, 1, 1]])>

7. numpy.zeros() : Šo funkciju izmanto, lai iegūtu jaunu noteiktas formas un veida masīvu, kas aizpildīts ar nullēm (0).

Sintakse: numpy.ones(forma, dtype=nav)

Piemērs:

Python3
import numpy as np np.zeros([4, 3], dtype = np.int32, order = 'f')>

Izvade:

array([[0, 0, 0],  [0, 0, 0],  [0, 0, 0],  [0, 0, 0]])>