Numpy filter

Numpy Filter



Å hente elementer eller hente elementer fra enkelte data er kjent som filtrering. NumPy er pakken som lar oss lage matriser og lagre alle typer data i form av en matrise. Når det gjelder filtrering i arrays mens vi jobber med NumPy-pakker levert av python, lar det oss filtrere eller hente data fra arrays ved å bruke innebygde funksjoner levert av NumPy. En boolsk indeksliste, en liste over boolske som tilsvarer matriseposisjoner, kan brukes til å filtrere matriser. Hvis elementet i indeksen til matrisen er sant, vil det bli lagret i matrisen med mindre elementet ekskluderes fra matrisen.

La oss anta at vi har dataene til studentene lagret i form av matriser, og vi ønsker å filtrere ut de mislykkede studentene. Vi vil ganske enkelt filtrere matrisen og ekskludere de mislykkede studentene, og en ny matrise med bestått student vil bli oppnådd.

Trinn for å filtrere en NumPy Array

Trinn 1: Importerer NumPy-modulen.







Steg 2: Opprette en matrise.



Trinn 3: Legg til filtreringsbetingelse.



Trinn 4: Opprett en ny filtrert matrise.





Syntaks:

Det er flere måter å filtrere matriser på. Det avhenger av tilstanden til filteret, som om vi bare har én tilstand eller vi har mer enn én tilstand.

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

array [ array < tilstand ]

I syntaksen nevnt ovenfor er 'array' navnet på matrisen som vi skal filtrere elementene fra. Og betingelsen vil være tilstanden som elementene er filtrert på, og operatoren '<' er det matematiske tegnet som representerer mindre enn. Det er effektivt å bruke det når vi bare har én betingelse eller uttalelse.



Metode 2: Bruke 'ELLER'-operatøren

array [ ( array < tilstand1 ) | ( array > tilstand2 ) ]

I denne metoden er 'array' navnet på matrisen som vi vil filtrere verdier fra og betingelsen sendes til den. Operatør «|» er vant til å representere 'ELLER'-funksjonen som betyr at fra begge forholdene skal en være sann. Det er nyttig når det er to forhold.

Metode 3: Bruke 'AND'-operatøren.

array [ ( array < tilstand1 ) & ( array > tilstand2 ) ]

I følgende syntaks er 'array' navnet på matrisen som skal filtreres. Mens betingelsen vil være tilstanden som diskutert i syntaksen ovenfor, mens operatoren som brukes '&' er AND-operatoren, noe som betyr at begge betingelsene må være sanne.

Metode 4: Filtrering etter listeverdier

array [ f.eks. i1d ( array , [ Liste over verdier ] ) ]

I denne metoden passerte vi vår definerte array 'np.in1d' som brukes til å sammenligne to arrays om elementet i arrayen som skal filtreres er tilstede i en annen array eller ikke. Og matrisen sendes til np.in1d-funksjonen som skal filtreres fra den gitte matrisen.

Eksempel # 01:

La oss nå implementere den ovenfor diskuterte metoden i et eksempel. For det første vil vi inkludere NumPy-bibliotekene våre levert av Python. Deretter vil vi lage en matrise kalt 'my_array' som vil inneholde verdiene '2', '3', '1', '9', '3', '5', '6' og '1'. Deretter sender vi filterkoden vår som er 'my_array[(my_array < 5)]' til print-setningen som betyr at vi filtrerer verdiene som er mindre enn '5'. I neste linje opprettet vi en annen rekke med navn 'array' som er ansvarlig for å ha verdiene '1', '2', '6', '3', '8', '1' og '0'. Til utskriftserklæringen passerte vi betingelsen om at vi vil skrive ut verdiene som er større enn 5.

Til slutt opprettet vi en annen matrise som vi kalte 'arr'. Den holder verdiene '6', '7', '10', '12' og '14'. Nå for denne matrisen vil vi skrive ut verdien som ikke eksisterer i matrisen for å se hva som vil skje hvis betingelsen ikke samsvarer. For å gjøre det passerte vi betingelsen som vil filtrere verdien som er lik verdien '5'.

import nusset som f.eks.

my_array = f.eks. array ( [ to , 3 , 1 , 9 , 3 , 5 , to , 6 , 1 ] )

skrive ut ( 'verdier mindre enn 5' , my_array [ ( my_array < 5 ) ] )

array = f.eks. array ( [ 1 , to , 6 , 3 , 8 , 1 , 0 ] )

skrive ut ( 'verdier større enn 5' , array [ ( array > 5 ) ] )

arr = f.eks. array ( [ 6 , 7 , 10 , 12 , 14 ] )

skrive ut ( 'verdier lik 5' , arr [ ( arr == 5 ) ] )

Etter å ha utført koden, har vi følgende utgang som et resultat, der vi har vist de 3 utgangene, den første er for elementene mindre enn '5' i den andre utførelsen skrev vi ut verdiene større enn '5'. På slutten skrev vi ut verdien som ikke eksisterer, da vi kan se at den ikke viser noen feil, men viste den tomme matrisen, noe som betyr at den ønskede verdien ikke eksisterer i den gitte matrisen.

Eksempel #02:

I dette tilfellet vil vi bruke noen av metodene der vi kan bruke mer enn én betingelse for å filtrere matrisene. For å utføre det, vil vi ganske enkelt importere NumPy-biblioteket og deretter lage en endimensjonal matrise i størrelsen '9' med verdiene '24', '3', '12', '9', '3', '5', '2', '6' og '7'. I neste linje brukte vi en print-setning som vi har sendt en matrise til som vi har initialisert med navnet «my_array» med betingelsen som argument. I dette har vi bestått eller-betingelsen, som betyr at fra begge, må en betingelse være sann. Hvis begge er sanne, vil den vise dataene for begge forholdene. I denne tilstanden ønsker vi å skrive ut verdiene som er mindre enn '5' og større enn '9'. I neste linje brukte vi AND-operatoren for å sjekke hva som vil skje hvis vi bruker en betingelse for å filtrere matrisen. I denne tilstanden viste vi verdier som er større enn '5' og mindre enn '9'.

Importer numpy som f.eks.

my_array = f.eks. array ( [ 24 , 3 , 12 , 9 , 3 , 5 , to , 6 , 7 ] )

skrive ut ( «verdier mindre enn 5 eller større enn 9 , my_array [ ( my_array < 5 ) | ( my_array > 9 ) ] )

skrive ut ( «verdier større enn 5 og mindre enn 9 , my_array [ ( my_array > 5 ) & ( my_array < 9 ) ] )

Som vist i utdraget nedenfor, vises resultatet vårt for koden ovenfor der vi filtrerte matrisen og fikk følgende resultat. Som vi kan se, vises verdiene større enn 9 og mindre enn 5 i den første utgangen, og verdiene mellom 5 og 9 neglisjeres. Mens vi i neste linje har skrevet ut verdiene mellom '5' og '9', som er '6' og '7'. De andre verdiene til matriser vises ikke.

Konklusjon

I denne veiledningen har vi kort diskutert bruken av filtermetoder som leveres av NumPy-pakken. Vi har implementert flere eksempler for å utdype for deg den beste måten å implementere filtermetodene levert av numpy.