Numpy filter

Numpy Filter



At hente elementer eller hente elementer fra nogle data er kendt som filtrering. NumPy er pakken, der giver os mulighed for at oprette arrays og gemme enhver type data i form af et array. Når det kommer til filtrering i arrays, mens vi arbejder med NumPy-pakker leveret af python, giver det os mulighed for at filtrere eller hente data fra arrays ved hjælp af indbyggede funktioner leveret af NumPy. En boolsk indeksliste, en liste over boolske værdier, der svarer til array-positioner, kan bruges til at filtrere arrays. Hvis elementet i arrayets indeks er sandt, vil det blive gemt i arrayet, medmindre elementet udelukkes fra arrayet.

Lad os antage, at vi har elevernes data gemt i form af arrays, og vi ønsker at filtrere de mislykkede elever fra. Vi vil simpelthen filtrere arrayet og udelukke de ikke beståede elever, og en ny array af den beståede studerende vil blive opnået.

Trin til at filtrere et NumPy-array

Trin 1: Importerer NumPy-modul.







Trin 2: Oprettelse af et array.



Trin 3: Tilføj filtreringsbetingelse.



Trin 4: Opret et nyt filtreret array.





Syntaks:

Der er flere måder at filtrere arrays på. Det afhænger af filterets tilstand, f.eks. om vi kun har én betingelse, eller vi har mere end én betingelse.

Metode 1: For én betingelse følger vi følgende syntaks

array [ array < tilstand ]

I syntaksen nævnt ovenfor er 'array' navnet på det array, hvorfra vi vil filtrere elementerne. Og betingelsen vil være den tilstand, hvorpå elementerne er filtreret, og operatoren '<' er det matematiske tegn, der repræsenterer mindre end. Det er effektivt at bruge det, når vi kun har én betingelse eller et udsagn.



Metode 2: Brug af 'ELLER'-operatøren

array [ ( array < tilstand 1 ) | ( array > tilstand2 ) ]

I denne metode er 'array' navnet på den matrix, hvorfra vi vil filtrere værdier, og betingelsen sendes til den. Operatør '|' er vant til at repræsentere 'ELLER'-funktionen, hvilket betyder, at fra begge betingelser skal man være sand. Det er nyttigt, når der er to forhold.

Metode 3: Brug af 'AND'-operatøren.

array [ ( array < tilstand 1 ) & ( array > tilstand2 ) ]

I den følgende syntaks er 'array' navnet på det array, der skal filtreres. Hvorimod betingelsen vil være tilstanden som diskuteret i ovenstående syntaks, mens den anvendte operator '&' er AND-operatoren, hvilket betyder, at begge betingelsen skal være sande.

Metode 4: Filtrering efter listeværdier

array [ for eksempel. in1d ( array , [ Liste over værdier ] ) ]

I denne metode bestod vi vores definerede array 'np.in1d', som bruges til at sammenligne to arrays, uanset om elementet i arrayet, der skal filtreres, er til stede i et andet array eller ej. Og arrayet sendes til np.in1d-funktionen, der skal filtreres fra det givne array.

Eksempel #01:

Lad os nu implementere den ovenfor diskuterede metode i et eksempel. For det første vil vi inkludere vores NumPy-biblioteker leveret af Python. Derefter vil vi oprette et array med navnet 'my_array', der vil indeholde værdierne '2', '3', '1', '9', '3', '5', '6' og '1'. Dernæst sender vi vores filterkode, der er 'my_array[(my_array < 5)]' til print-sætningen, hvilket betyder, at vi filtrerer de værdier, der er mindre end '5'. I den næste linje oprettede vi en anden matrix med navn 'array', der er ansvarlig for at have værdierne '1', '2', '6', '3', '8', '1' og '0'. Til udskriftserklæringen overholdt vi betingelsen om, at vi vil udskrive værdier, der er større end 5.

Til sidst oprettede vi et andet array, som vi kaldte 'arr'. Den holder værdierne '6', '7', '10', '12' og '14'. For dette array vil vi udskrive den værdi, der ikke findes i arrayet, for at se, hvad der vil ske, hvis betingelsen ikke stemmer overens. For at gøre det bestod vi betingelsen, som vil filtrere den værdi, der er lig med værdien '5'.

importere nusset som for eksempel.

mit_array = for eksempel. array ( [ to , 3 , 1 , 9 , 3 , 5 , to , 6 , 1 ] )

Print ( 'værdier mindre end 5' , mit_array [ ( mit_array < 5 ) ] )

array = for eksempel. array ( [ 1 , to , 6 , 3 , 8 , 1 , 0 ] )

Print ( 'værdier større end 5' , array [ ( array > 5 ) ] )

arr = for eksempel. array ( [ 6 , 7 , 10 , 12 , 14 ] )

Print ( 'værdier er lig med 5' , arr [ ( arr == 5 ) ] )

Efter eksekvering af koden har vi følgende output som resultat, hvor vi har vist de 3 udgange, den første er for elementerne mindre end '5' i den anden udførelse udskrev vi værdierne større end '5'. Til sidst udskrev vi den værdi, der ikke eksisterer, da vi kan se, at den ikke viser nogen fejl, men viste den tomme matrix, hvilket betyder, at den ønskede værdi ikke eksisterer i den givne matrix.

Eksempel #02:

I dette tilfælde vil vi bruge nogle af metoderne, hvor vi kan bruge mere end én betingelse til at filtrere arrays. For at udføre det vil vi blot importere NumPy-biblioteket og derefter oprette et endimensionelt array af størrelse '9' med værdierne '24', '3', '12', '9', '3', '5', '2', '6' og '7'. I næste linje brugte vi en print-sætning, hvortil vi har sendt et array, som vi har initialiseret med navnet 'my_array' med betingelsen som et argument. I dette har vi bestået eller betingelsen, hvilket betyder fra dem begge, at en betingelse skal være sand. Hvis begge af dem er sande, vil den vise dataene for begge betingelser. I denne tilstand vil vi udskrive værdier, der er mindre end '5' og større end '9'. I den næste linje brugte vi AND-operatoren til at kontrollere, hvad der vil ske, hvis vi bruger en betingelse til at filtrere arrayet. I denne tilstand viste vi værdier, der er større end '5' og mindre end '9'.

Importer numpy som for eksempel.

mit_array = for eksempel. array ( [ 24 , 3 , 12 , 9 , 3 , 5 , to , 6 , 7 ] )

Print ( 'værdier mindre end 5 eller bedre end 9 , mit_array [ ( mit_array < 5 ) | ( mit_array > 9 ) ] )

Print ( 'værdier større end 5 og Mindre end 9 , mit_array [ ( mit_array > 5 ) & ( mit_array < 9 ) ] )

Som vist i uddraget nedenfor, vises vores resultat for koden ovenfor, hvor vi filtrerede arrayet og fik følgende resultat. Som vi kan se, vises værdierne større end 9 og mindre end 5 i det første output, og værdierne mellem 5 og 9 ignoreres. Mens vi i den næste linje har udskrevet værdierne mellem '5' og '9', som er '6' og '7'. De andre værdier for arrays vises ikke.

Konklusion

I denne vejledning har vi kort diskuteret brugen af ​​filtermetoder, der leveres af NumPy-pakken. Vi har implementeret flere eksempler for at uddybe for dig den bedste måde at implementere filtermetodologierne leveret af numpy.