Numpy filtar

Numpy Filtar



Dohvaćanje elemenata ili dobivanje elemenata iz nekih podataka poznato je kao filtriranje. NumPy je paket koji nam omogućuje stvaranje nizova i pohranu bilo koje vrste podataka u obliku niza. Kada je riječ o filtriranju u nizovima tijekom rada s NumPy paketima koje nudi python, to nam omogućuje filtriranje ili dobivanje podataka iz nizova pomoću ugrađenih funkcija koje nudi NumPy. Booleov popis indeksa, popis Booleovih vrijednosti koje odgovaraju pozicijama nizova, može se koristiti za filtriranje nizova. Ako je element u indeksu niza istinit, bit će pohranjen u nizu osim ako je element isključen iz niza.

Pretpostavimo da imamo podatke o studentima pohranjene u obliku nizova i želimo filtrirati neuspješne studente. Jednostavno ćemo filtrirati niz i isključiti neuspješne studente i dobit ćemo novi niz položenih učenika.

Koraci za filtriranje NumPy polja

Korak 1: Uvoz NumPy modula.







Korak 2: Stvaranje niza.



Korak 3: Dodaj uvjet filtriranja.



Korak 4: Stvorite novi filtrirani niz.





Sintaksa:

Postoji više načina za filtriranje nizova. Ovisi o stanju filtra, primjerice imamo li samo jedan uvjet ili imamo više od jednog uvjeta.

Metoda 1: Za jedan uvjet slijedit ćemo sljedeću sintaksu

niz [ niz < stanje ]

U gore spomenutoj sintaksi, 'niz' je naziv niza iz kojeg ćemo filtrirati elemente. A uvjet će biti stanje u kojem se elementi filtriraju, a operator “<” je matematički znak koji predstavlja manje od. Učinkovito ga je koristiti kada imamo samo jedan uvjet ili izjavu.



Metoda 2: Korištenje operatora “OR”.

niz [ ( niz < condition1 ) | ( niz > uvjet2 ) ]

U ovoj metodi, 'niz' je naziv niza iz kojeg ćemo filtrirati vrijednosti i prosljeđuje mu se uvjet. Operator “|” koristi se za predstavljanje funkcije 'ILI', što znači da bi od oba uvjeta jedan trebao biti istinit. Korisno je kada postoje dva uvjeta.

Metoda 3: Korištenje operatora 'I'.

niz [ ( niz < condition1 ) i ( niz > uvjet2 ) ]

U sljedećoj sintaksi, 'niz' je naziv niza koji se filtrira. Dok će uvjet biti stanje kao što je objašnjeno u gornjoj sintaksi, dok je korišteni operator '&' operator AND, što znači da oba uvjeta moraju biti istinita.

Metoda 4: Filtriranje prema navedenim vrijednostima

niz [ npr. in1d ( niz , [ Popis vrijednosti ] ) ]

U ovoj smo metodi proslijedili naš definirani niz 'np.in1d' koji se koristi za usporedbu dva niza je li element niza koji se želi filtrirati prisutan u drugom nizu ili ne. Polje se prosljeđuje funkciji np.in1d ​​koja se želi filtrirati iz zadanog polja.

Primjer # 01:

Implementirajmo sada gore opisanu metodu u primjeru. Prvo ćemo uključiti naše NumPy biblioteke koje pruža Python. Zatim ćemo stvoriti niz pod nazivom “my_array” koji će sadržavati vrijednosti “2”, “3”, “1”, “9”, “3”, “5”, “6” i “1”. Zatim ćemo proslijediti naš kod filtra koji je “my_array[(my_array < 5)]” naredbi za ispis što znači da filtriramo vrijednosti manje od “5”. U sljedećem smo retku stvorili još jedno polje imena 'array' koje je odgovorno za vrijednosti '1', '2', '6', '3', '8', '1' i '0'. Ispisu smo proslijedili uvjet da ćemo ispisivati ​​vrijednosti veće od 5.

Na kraju, stvorili smo još jedan niz koji smo nazvali 'arr'. Sadrži vrijednosti '6', '7', '10', '12' i '14'. Sada ćemo za ovaj niz ispisati vrijednost koja ne postoji unutar niza da vidimo što će se dogoditi ako uvjet ne odgovara. Da bismo to učinili, proslijedili smo uvjet koji će filtrirati vrijednost koja je jednaka vrijednosti '5'.

uvoz numpy kao npr.

moj_niz = npr. niz ( [ dva , 3 , 1 , 9 , 3 , 5 , dva , 6 , 1 ] )

ispisati ( 'vrijednosti manje od 5' , moj_niz [ ( moj_niz < 5 ) ] )

niz = npr. niz ( [ 1 , dva , 6 , 3 , 8 , 1 , 0 ] )

ispisati ( 'vrijednosti veće od 5' , niz [ ( niz > 5 ) ] )

arr = npr. niz ( [ 6 , 7 , 10 , 12 , 14 ] )

ispisati ( 'vrijednosti jednake 5' , arr [ ( arr == 5 ) ] )

Nakon izvršavanja koda, imamo sljedeći izlaz kao rezultat, u kojem smo prikazali 3 izlaza, prvi je za elemente manje od '5' u drugom izvršavanju smo ispisali vrijednosti veće od '5'. Na kraju smo ispisali vrijednost koja ne postoji jer vidimo da ne prikazuje nikakvu pogrešku već prikazuje prazan niz, što znači da željena vrijednost ne postoji u zadanom nizu.

Primjer # 02:

U ovom slučaju koristit ćemo neke od metoda u kojima možemo koristiti više od jednog uvjeta za filtriranje nizova. Da bismo to izveli, jednostavno ćemo uvesti biblioteku NumPy i zatim stvoriti jednodimenzionalni niz veličine '9' s vrijednostima '24', '3', '12', '9', '3', '5', “2”, “6” i “7”. U sljedećem retku upotrijebili smo naredbu za ispis kojoj smo proslijedili polje koje smo inicijalizirali imenom 'my_array' s uvjetom kao argumentom. U ovome smo prošli uvjet ili što znači da od oba uvjeta jedan uvjet mora biti istinit. Ako su oba uvjeta istinita, prikazat će se podaci za oba uvjeta. U ovom stanju želimo ispisati vrijednosti koje su manje od '5' i veće od '9'. U sljedećem retku upotrijebili smo operator AND da provjerimo što će se dogoditi ako upotrijebimo uvjet za filtriranje niza. U ovom stanju prikazali smo vrijednosti veće od '5' i manje od '9'.

Uvezi numpy kao npr.

moj_niz = npr. niz ( [ 24 , 3 , 12 , 9 , 3 , 5 , dva , 6 , 7 ] )

ispisati ( “vrijednosti manje od 5 ili veći od 9 , moj_niz [ ( moj_niz < 5 ) | ( moj_niz > 9 ) ] )

ispisati ( “vrijednosti veće od 5 i manje od 9 , moj_niz [ ( moj_niz > 5 ) i ( moj_niz < 9 ) ] )

Kao što je prikazano u isječku ispod, prikazan je naš rezultat za gornji kod u kojem smo filtrirali niz i dobili sljedeći rezultat. Kao što vidimo, vrijednosti veće od 9 i manje od 5 prikazane su u prvom izlazu, a vrijednosti između 5 i 9 su zanemarene. Dok smo u sljedećem retku ispisali vrijednosti između “5” i “9” koje su “6” i “7”. Ostale vrijednosti nizova se ne prikazuju.

Zaključak

U ovom smo vodiču ukratko raspravljali o korištenju metoda filtriranja koje nudi paket NumPy. Implementirali smo više primjera kako bismo za vas razradili najbolji način implementacije metodologija filtriranja koje nudi numpy.