Ndarray és l'objecte de matriu n-dimensional definit al numpy que emmagatzema la col·lecció d'elements de tipus similar. En altres paraules, podem definir un ndarray com la col·lecció d'objectes de tipus de dades (dtype).
Es pot accedir a l'objecte ndarray mitjançant la indexació basada en 0. Cada element de l'objecte Array conté la mateixa mida a la memòria.
Creació d'un objecte ndarray
L'objecte ndarray es pot crear utilitzant la rutina de matriu del mòdul numpy. Per a això, hem d'importar el numpy.
>>> a = numpy.array
Considereu la imatge següent.
També podem passar un objecte de col·lecció a la rutina de matriu per crear la matriu n-dimensional equivalent. La sintaxi es mostra a continuació.
>>> numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
Els paràmetres es descriuen a la taula següent.
SN | Paràmetre | Descripció |
---|---|---|
1 | objecte | Representa l'objecte de la col·lecció. Pot ser una llista, tupla, diccionari, conjunt, etc. |
2 | dtype | Podem canviar el tipus de dades dels elements de la matriu canviant aquesta opció al tipus especificat. El valor predeterminat és cap. |
3 | còpia | És opcional. Per defecte, és cert, el que significa que l'objecte es copia. |
4 | ordre | Hi pot haver 3 valors possibles assignats a aquesta opció. Pot ser C (ordre de columnes), R (ordre de fila) o A (qualsevol) |
5 | provat | La matriu retornada serà una matriu de classe base per defecte. Podem canviar-ho per fer passar les subclasses configurant aquesta opció com a true. |
6 | ndmin | Representa les dimensions mínimes de la matriu resultant. |
Per crear una matriu utilitzant la llista, utilitzeu la sintaxi següent.
>>> a = numpy.array([1, 2, 3])
Per crear un objecte de matriu multidimensional, utilitzeu la sintaxi següent.
>>> a = numpy.array([[1, 2, 3], [4, 5, 6]])
Per canviar el tipus de dades dels elements de la matriu, esmenteu el nom del tipus de dades juntament amb la col·lecció.
forma completa iskcon
>>> a = numpy.array([1, 3, 5, 7], complex)
Trobar les dimensions de la matriu
El sóc jo La funció es pot utilitzar per trobar les dimensions de la matriu.
>>> import numpy as np >>> arr = np.array([[1, 2, 3, 4], [4, 5, 6, 7], [9, 10, 11, 23]]) >>> print(arr.ndim)
Trobar la mida de cada element de la matriu
La funció itemsize s'utilitza per obtenir la mida de cada element de matriu. Retorna el nombre de bytes que pren cada element de la matriu.
Considereu l'exemple següent.
Exemple
#finding the size of each item in the array import numpy as np a = np.array([[1,2,3]]) print('Each item contains',a.itemsize,'bytes')
Sortida:
int a cadena
Each item contains 8 bytes.
Trobar el tipus de dades de cada element de la matriu
Per comprovar el tipus de dades de cada element de matriu, s'utilitza la funció dtype. Considereu l'exemple següent per comprovar el tipus de dades dels elements de la matriu.
Exemple
#finding the data type of each array item import numpy as np a = np.array([[1,2,3]]) print('Each item is of the type',a.dtype)
Sortida:
Each item is of the type int64
Trobar la forma i la mida de la matriu
Per obtenir la forma i la mida de la matriu, s'utilitza la funció de mida i forma associada a la matriu numpy.
Considereu l'exemple següent.
Exemple
import numpy as np a = np.array([[1,2,3,4,5,6,7]]) print('Array Size:',a.size) print('Shape:',a.shape)
Sortida:
Array Size: 7 Shape: (1, 7)
Reforma dels objectes de la matriu
Per la forma de la matriu, ens referim al nombre de files i columnes d'una matriu multidimensional. Tanmateix, el mòdul numpy ens proporciona la manera de remodelar la matriu canviant el nombre de files i columnes de la matriu multidimensional.
La funció reshape() associada a l'objecte ndarray s'utilitza per remodelar la matriu. Accepta els dos paràmetres que indiquen la fila i les columnes de la nova forma de la matriu.
Reformem la matriu que es mostra a la imatge següent.
Exemple
import numpy as np a = np.array([[1,2],[3,4],[5,6]]) print('printing the original array..') print(a) a=a.reshape(2,3) print('printing the reshaped array..') print(a)
Sortida:
printing the original array.. [[1 2] [3 4] [5 6]] printing the reshaped array.. [[1 2 3] [4 5 6]]
Tall a la matriu
El tall a la matriu NumPy és la manera d'extreure una sèrie d'elements d'una matriu. El tall a la matriu es realitza de la mateixa manera que es realitza a la llista de Python.
Considereu l'exemple següent per imprimir un element concret de la matriu.
Exemple
import numpy as np a = np.array([[1,2],[3,4],[5,6]]) print(a[0,1]) print(a[2,0])
Sortida:
quan va sortir la victòria 7
2 5
El programa anterior imprimeix el 2ndelement del 0thíndex i 0thelement del 2ndíndex de la matriu.
Linspace
La funció linspace() retorna els valors espaiats uniformement durant l'interval donat. L'exemple següent retorna els 10 valors separats uniformement durant l'interval donat 5-15
Exemple
import numpy as np a=np.linspace(5,15,10) #prints 10 values which are evenly spaced over the given interval 5-15 print(a)
Sortida:
[ 5. 6.11111111 7.22222222 8.33333333 9.44444444 10.55555556 11.66666667 12.77777778 13.88888889 15. ]
Trobar el màxim, el mínim i la suma dels elements de la matriu
El NumPy proporciona les funcions max(), min() i sum() que s'utilitzen per trobar el màxim, el mínim i la suma dels elements de la matriu respectivament.
Considereu l'exemple següent.
Exemple
import numpy as np a = np.array([1,2,3,10,15,4]) print('The array:',a) print('The maximum element:',a.max()) print('The minimum element:',a.min()) print('The sum of the elements:',a.sum())
Sortida:
The array: [ 1 2 3 10 15 4] The maximum element: 15 The minimum element: 1 The sum of the elements: 35
Eix de la matriu NumPy
Una matriu multidimensional NumPy està representada per l'eix on l'eix-0 representa les columnes i l'eix-1 representa les files. Podem esmentar l'eix per realitzar càlculs a nivell de fila o columna, com ara l'addició d'elements de fila o columna.
Per calcular l'element màxim entre cada columna, l'element mínim entre cada fila i l'addició de tots els elements de la fila, considereu l'exemple següent.
Exemple
import numpy as np a = np.array([[1,2,30],[10,15,4]]) print('The array:',a) print('The maximum elements of columns:',a.max(axis = 0)) print('The minimum element of rows',a.min(axis = 1)) print('The sum of all rows',a.sum(axis = 1))
Sortida:
The array: [[1 2 30] [10 15 4]] The maximum elements of columns: [10 15 30] The minimum element of rows [1 4] The sum of all rows [33 29]
Trobar l'arrel quadrada i la desviació estàndard
Les funcions sqrt() i std() associades a la matriu numpy s'utilitzen per trobar l'arrel quadrada i la desviació estàndard dels elements de la matriu respectivament.
La desviació estàndard significa quant varia cada element de la matriu respecte al valor mitjà de la matriu numpy.
Les ordres de Linux creen una carpeta
Considereu l'exemple següent.
Exemple
import numpy as np a = np.array([[1,2,30],[10,15,4]]) print(np.sqrt(a)) print(np.std(a))
Sortida:
[[1. 1.41421356 5.47722558] [3.16227766 3.87298335 2. ]] 10.044346115546242
Operacions aritmètiques sobre la matriu
El mòdul numpy ens permet realitzar les operacions aritmètiques en matrius multidimensionals directament.
En l'exemple següent, les operacions aritmètiques es realitzen sobre les dues matrius multidimensionals a i b.
Exemple
import numpy as np a = np.array([[1,2,30],[10,15,4]]) b = np.array([[1,2,3],[12, 19, 29]]) print('Sum of array a and b ',a+b) print('Product of array a and b ',a*b) print('Division of array a and b ',a/b)
Concatenació de matrius
El numpy ens proporciona l'apilament vertical i l'apilament horitzontal que ens permet concatenar dues matrius multidimensionals verticalment o horitzontalment.
Considereu l'exemple següent.
Exemple
import numpy as np a = np.array([[1,2,30],[10,15,4]]) b = np.array([[1,2,3],[12, 19, 29]]) print('Arrays vertically concatenated ',np.vstack((a,b))); print('Arrays horizontally concatenated ',np.hstack((a,b)))
Sortida:
Arrays vertically concatenated [[ 1 2 30] [10 15 4] [ 1 2 3] [12 19 29]] Arrays horizontally concatenated [[ 1 2 30 1 2 3] [10 15 4 12 19 29]]