Tegyük fel, hogy a tanulók adatait tömb formájában tároljuk, és ki szeretnénk szűrni a bukott tanulókat. Egyszerűen kiszűrjük a tömböt, és kizárjuk a sikertelen tanulókat, és a sikeres hallgatók új tömbjét kapjuk.
A NumPy tömb szűrésének lépései
1. lépés: NumPy modul importálása.
2. lépés: Tömb létrehozása.
3. lépés: Szűrési feltétel hozzáadása.
4. lépés: Hozzon létre egy új szűrt tömböt.
Szintaxis:
A tömbök szűrésének többféle módja van. Ez a szűrő állapotától függ, például ha csak egy feltételünk van, vagy több feltételünk van.
1. módszer: Egy feltétel esetén a következő szintaxist fogjuk követni
sor [ sor < állapot ]A fent említett szintaxisban a „tömb” annak a tömbnek a neve, amelyből kiszűrjük az elemeket. A feltétel pedig az az állapot lesz, amelyen az elemek szűrve vannak, és a „<” operátor a matematikai előjel, amely kisebb mint. Akkor célszerű használni, ha csak egy feltételünk vagy állításunk van.
2. módszer: Az „OR” operátor használata
sor [ ( sor < feltétel1 ) | ( sor > feltétel2 ) ]Ebben a módszerben a „tömb” annak a tömbnek a neve, amelyből kiszűrjük az értékeket, és a feltételt átadjuk neki. Üzemeltető „|” az „OR” függvény ábrázolására szokott, ami azt jelenti, hogy mindkét feltételnek igaznak kell lennie. Akkor hasznos, ha két feltétel van.
3. módszer: Az „ÉS” operátor használata.
sor [ ( sor < feltétel1 ) & ( sor > feltétel2 ) ]A következő szintaxisban a „tömb” a szűrendő tömb neve. Míg a feltétel a fenti szintaxisban tárgyalt állapot lesz, míg az „&” operátor az ÉS operátor, ami azt jelenti, hogy mindkét feltételnek igaznak kell lennie.
4. módszer: Szűrés listázott értékek szerint
sor [ például. in1d ( sor , [ Értéklista ] ) ]Ebben a módszerben átadtuk az „np.in1d” definiált tömbünket, amely két tömb összehasonlítására szolgál, hogy a szűrni kívánt tömb eleme jelen van-e egy másik tömbben vagy sem. És a tömb átkerül az np.in1d függvénynek, amelyet ki kell szűrni az adott tömbből.
01. példa:
Most pedig hajtsuk végre a fent tárgyalt módszert egy példában. Először is, a Python által biztosított NumPy-könyvtárainkat fogjuk tartalmazni. Ezután létrehozunk egy 'my_array' nevű tömböt, amely a '2', '3', '1', '9', '3', '5', '6' és '1' értékeket tartalmazza. Ezután átadjuk a „my_array[(my_array < 5)]” szűrőkódot a print utasításnak, ami azt jelenti, hogy az „5”-nél kisebb értékeket szűrjük. A következő sorban létrehoztunk egy másik 'tömb' nevű tömböt, amely az '1', '2', '6', '3', '8', '1' és '0' értékekért felelős. A print utasításhoz azt a feltételt adtuk át, hogy az 5-nél nagyobb értékeket nyomtatjuk ki.
Végül létrehoztunk egy másik tömböt, amelyet „arr”-nek neveztünk el. A „6”, „7”, „10”, „12” és „14” értékeket tartalmazza. Most ennél a tömbnél azt az értéket fogjuk kinyomtatni, amely nem létezik a tömbön belül, hogy megnézzük, mi történik, ha a feltétel nem egyezik. Ehhez átadtuk azt a feltételt, amely kiszűri az „5” értékkel egyenlő értéket.
import zsibbadt mint például.my_array = például. sor ( [ két , 3 , 1 , 9 , 3 , 5 , két , 6 , 1 ] )
nyomtatás ( '5-nél kisebb értékek' , my_array [ ( my_array < 5 ) ] )
sor = például. sor ( [ 1 , két , 6 , 3 , 8 , 1 , 0 ] )
nyomtatás ( '5-nél nagyobb értékek' , sor [ ( sor > 5 ) ] )
arr = például. sor ( [ 6 , 7 , 10 , 12 , 14 ] )
nyomtatás ( 'az értékek egyenlők 5' , arr [ ( arr == 5 ) ] )
A kód végrehajtása után a következő kimenetet kapjuk, amelyben a 3 kimenetet jelenítettük meg, az első az „5”-nél kisebb elemekre, a második végrehajtásban az „5”-nél nagyobb értékeket nyomtattuk ki. A végén kiírtuk a nem létező értéket, amint látjuk, nem jelez hibát, hanem az üres tömböt jelenítettük meg, ami azt jelenti, hogy a kívánt érték nem létezik az adott tömbben.
02. példa:
Ebben az esetben olyan módszereket fogunk használni, amelyeknél több feltételt is használhatunk a tömbök szűrésére. Ennek végrehajtásához egyszerűen importáljuk a NumPy könyvtárat, majd létrehozunk egy „9” méretű egydimenziós tömböt, amelynek értékei „24”, „3”, „12”, „9”, „3”, „5”, „2”, „6” és „7”. A következő sorban egy print utasítást használtunk, amelyhez egy tömböt adtunk át, amelyet inicializáltunk „my_array” néven, argumentumként a feltétellel. Ebben a vagy feltételt teljesítettük, ami azt jelenti, hogy mindkettőből egy feltételnek igaznak kell lennie. Ha mindkettő igaz, akkor mindkét feltételre vonatkozó adatokat jeleníti meg. Ebben az esetben az „5”-nél kisebb és „9”-nél nagyobb értékeket szeretnénk kinyomtatni. A következő sorban az ÉS operátorral ellenőriztük, mi történik, ha egy feltételt használunk a tömb szűrésére. Ebben az állapotban olyan értékeket jelenítettünk meg, amelyek nagyobbak, mint „5” és kisebbek, mint „9”.
Import numpy mint például.my_array = például. sor ( [ 24 , 3 , 12 , 9 , 3 , 5 , két , 6 , 7 ] )
nyomtatás ( „az értékek kisebbek, mint 5 vagy nagyobb, mint 9 ” , my_array [ ( my_array < 5 ) | ( my_array > 9 ) ] )
nyomtatás ( „nagyobb értékek, mint 5 és kevesebb, mint 9 ” , my_array [ ( my_array > 5 ) & ( my_array < 9 ) ] )
Ahogy az alábbi részletben látható, megjelenik a fenti kódra vonatkozó eredményenk, amelyben kiszűrtük a tömböt, és a következő eredményt kaptuk. Amint látjuk, a 9-nél nagyobb és 5-nél kisebb értékek az első kimenetben jelennek meg, az 5 és 9 közötti értékeket figyelmen kívül hagyjuk. Míg a következő sorban az „5” és „9” közötti értékeket nyomtattuk, amelyek „6” és „7”. A tömbök többi értéke nem jelenik meg.
Következtetés
Ebben az útmutatóban röviden tárgyaltuk a NumPy csomag által biztosított szűrőmódszerek használatát. Számos példát implementáltunk, hogy kidolgozzuk az Ön számára a numpy által biztosított szűrőmódszerek megvalósításának legjobb módját.