Filtre Numpy

Filtre Numpy



Obtenir elements o obtenir elements d'algunes dades es coneix com a filtrat. NumPy és el paquet que ens permet crear matrius i emmagatzemar qualsevol tipus de dades en forma de matriu. Quan es tracta de filtrar matrius mentre treballem amb paquets NumPy proporcionats per Python, ens permet filtrar o obtenir dades de matrius mitjançant funcions integrades proporcionades per NumPy. Es pot utilitzar una llista d'índex booleà, una llista de booleans corresponents a posicions de matriu, per filtrar matrius. Si l'element de l'índex de la matriu és cert, s'emmagatzemarà a la matriu tret que l'element estigui exclòs de la matriu.

Suposem que tenim les dades dels estudiants emmagatzemades en forma de matrius i volem filtrar els estudiants suspès. Simplement filtrarem la matriu i exclourem els estudiants suspès i s'obtindrà una nova matriu de l'estudiant aprovat.

Passos per filtrar una matriu NumPy

Pas 1: Importació del mòdul NumPy.







Pas 2: Creació d'una matriu.



Pas 3: Afegeix una condició de filtratge.



Pas 4: Creeu una matriu filtrada nova.





Sintaxi:

Hi ha diverses maneres de filtrar matrius. Depèn de l'estat del filtre, com si només tenim una condició o tenim més d'una condició.

Mètode 1: per a una condició seguirem la sintaxi següent

matriu [ matriu < condició ]

En la sintaxi esmentada anteriorment, 'array' és el nom de la matriu des del qual filtrarem els elements. I la condició serà l'estat en què es filtren els elements i l'operador “<” és el signe matemàtic que representa menys de. És eficient utilitzar-lo quan només tenim una condició o declaració.



Mètode 2: Utilitzant l'operador 'OR'.

matriu [ ( matriu < condició 1 ) | ( matriu > condició 2 ) ]

En aquest mètode, 'array' és el nom de la matriu des del qual filtrarem els valors i se li passa la condició. Operador “|” s'acostuma a representar la funció 'OR', el que significa que des d'ambdues condicions s'ha de ser cert. És útil quan hi ha dues condicions.

Mètode 3: Ús de l'operador 'AND'.

matriu [ ( matriu < condició 1 ) & ( matriu > condició 2 ) ]

A la sintaxi següent, 'array' és el nom de la matriu que s'ha de filtrar. Mentre que, la condició serà l'estat tal com s'ha comentat a la sintaxi anterior, mentre que l'operador utilitzat '&' és l'operador AND, el que significa que les dues condicions han de ser certes.

Mètode 4: Filtrat per valors llistats

matriu [ per exemple. in1d ( matriu , [ Llista de valors ] ) ]

En aquest mètode, hem passat la nostra matriu definida 'np.in1d' que s'utilitza per comparar dues matrius si l'element de la matriu que s'ha de filtrar està present en una altra matriu o no. I la matriu es passa a la funció np.in1d ​​que s'ha de filtrar de la matriu donada.

Exemple # 01:

Ara, implementem el mètode comentat anteriorment en un exemple. En primer lloc, inclourem les nostres biblioteques NumPy proporcionades per Python. Aleshores, crearem una matriu anomenada 'my_array' que contindrà els valors '2', '3', '1', '9', '3', '5', '6' i '1'. A continuació, passarem el nostre codi de filtre que és 'my_array[(my_array < 5)]' a la instrucció d'impressió, el que significa que estem filtrant els valors que són inferiors a '5'. A la línia següent, vam crear una altra matriu de nom 'array' que és responsable de tenir valors '1', '2', '6', '3', '8', '1' i '0'. A la instrucció d'impressió, hem passat la condició d'imprimir els valors que siguin superiors a 5.

Finalment, vam crear una altra matriu que vam anomenar 'arr'. Conté els valors '6', '7', '10', '12' i '14'. Ara per a aquesta matriu, imprimirem el valor que no existeix dins de la matriu per veure què passarà si la condició no coincideix. Per fer-ho, hem passat la condició que filtrarà el valor que sigui igual al valor '5'.

importar numpy com per exemple.

la meva_matriu = per exemple. matriu ( [ 2 , 3 , 1 , 9 , 3 , 5 , 2 , 6 , 1 ] )

imprimir ( 'valors inferiors a 5' , la meva_matriu [ ( la meva_matriu < 5 ) ] )

matriu = per exemple. matriu ( [ 1 , 2 , 6 , 3 , 8 , 1 , 0 ] )

imprimir ( 'valors superiors a 5' , matriu [ ( matriu > 5 ) ] )

arr = per exemple. matriu ( [ 6 , 7 , 10 , 12 , 14 ] )

imprimir ( 'valors iguals a 5' , arr [ ( arr == 5 ) ] )

Després d'executar el codi, tenim la següent sortida com a resultat, en la qual hem mostrat les 3 sortides, la primera és per als elements menors de '5' en la segona execució vam imprimir els valors superiors a '5'. Al final, vam imprimir el valor que no existeix, ja que podem veure que no mostra cap error sinó que es mostra la matriu buida, el que significa que el valor desitjat no existeix a la matriu donada.

Exemple # 02:

En aquest cas, utilitzarem alguns dels mètodes en què podem utilitzar més d'una condició per filtrar les matrius. Per fer-ho, simplement importarem la biblioteca NumPy i després crearem una matriu unidimensional de mida '9' amb valors '24', '3', '12', '9', '3', '5', '2', '6' i '7'. A la línia següent, hem utilitzat una instrucció d'impressió a la qual hem passat una matriu que hem inicialitzat amb el nom 'my_array' amb la condició com a argument. En això, hem passat la condició o, que significa que de tots dos, una condició ha de ser certa. Si totes dues són certes, mostrarà les dades de les dues condicions. En aquesta condició, volem imprimir els valors que són inferiors a '5' i superiors a '9'. A la línia següent, hem utilitzat l'operador AND per comprovar què passarà si fem servir una condició per filtrar la matriu. En aquesta condició, vam mostrar valors que són superiors a '5' i inferiors a '9'.

Importa numpy com per exemple.

la meva_matriu = per exemple. matriu ( [ 24 , 3 , 12 , 9 , 3 , 5 , 2 , 6 , 7 ] )

imprimir ( “valors inferiors a 5 o més gran que 9 , la meva_matriu [ ( la meva_matriu < 5 ) | ( la meva_matriu > 9 ) ] )

imprimir ( “valors superiors a 5 i menys que 9 , la meva_matriu [ ( la meva_matriu > 5 ) & ( la meva_matriu < 9 ) ] )

Tal com es mostra al fragment següent, es mostra el nostre resultat per al codi anterior en què vam filtrar la matriu i vam obtenir el resultat següent. Com podem veure els valors superiors a 9 i inferiors a 5 es mostren a la primera sortida i es descuiden els valors entre 5 i 9. Mentre que, a la línia següent, hem imprès els valors entre “5” i “9” que són “6” i “7”. Els altres valors de les matrius no es mostren.

Conclusió

En aquesta guia, hem comentat breument l'ús dels mètodes de filtre que ofereix el paquet NumPy. Hem implementat diversos exemples per explicar-vos la millor manera d'implementar les metodologies de filtre proporcionades per numpy.