Numpy φίλτρο

Numpy Philtro



Η ανάκτηση στοιχείων ή η λήψη στοιχείων από ορισμένα δεδομένα είναι γνωστή ως φιλτράρισμα. Το NumPy είναι το πακέτο που μας επιτρέπει να δημιουργήσουμε πίνακες και να αποθηκεύσουμε κάθε τύπο δεδομένων σε μορφή πίνακα. Όταν πρόκειται για φιλτράρισμα σε πίνακες κατά την εργασία με πακέτα NumPy που παρέχονται από την python, μας επιτρέπει να φιλτράρουμε ή να λαμβάνουμε δεδομένα από πίνακες χρησιμοποιώντας ενσωματωμένες συναρτήσεις που παρέχονται από το NumPy. Μια λίστα Boolean ευρετηρίου, μια λίστα Boolean που αντιστοιχεί σε θέσεις πίνακα, μπορεί να χρησιμοποιηθεί για να φιλτράρει πίνακες. Εάν το στοιχείο στο ευρετήριο του πίνακα είναι αληθές, θα αποθηκευτεί στον πίνακα, εκτός εάν το στοιχείο εξαιρεθεί από τον πίνακα.

Ας υποθέσουμε ότι έχουμε τα δεδομένα των μαθητών αποθηκευμένα με τη μορφή πινάκων και θέλουμε να φιλτράρουμε τους αποτυχημένους μαθητές. Απλώς θα φιλτράρουμε τον πίνακα και θα εξαιρέσουμε τους μαθητές που απέτυχαν και θα ληφθεί ένας νέος πίνακας του μαθητή που πέρασε.

Βήματα για το φιλτράρισμα ενός πίνακα NumPy

Βήμα 1: Εισαγωγή μονάδας NumPy.







Βήμα 2: Δημιουργία πίνακα.



Βήμα 3: Προσθήκη συνθήκης φιλτραρίσματος.



Βήμα 4: Δημιουργήστε έναν νέο φιλτραρισμένο πίνακα.





Σύνταξη:

Υπάρχουν πολλοί τρόποι φιλτραρίσματος συστοιχιών. Εξαρτάται από την κατάσταση του φίλτρου, όπως εάν έχουμε μόνο μία κατάσταση ή έχουμε περισσότερες από μία συνθήκες.

Μέθοδος 1: Για μία συνθήκη θα ακολουθήσουμε την ακόλουθη σύνταξη

πίνακας [ πίνακας < κατάσταση ]

Στη σύνταξη που αναφέρθηκε παραπάνω, 'array' είναι το όνομα του πίνακα από τον οποίο θα φιλτράρουμε τα στοιχεία. Και η συνθήκη θα είναι η κατάσταση στην οποία φιλτράρονται τα στοιχεία και ο τελεστής '<' είναι το μαθηματικό πρόσημο που αντιπροσωπεύει λιγότερο από. Είναι αποτελεσματικό να το χρησιμοποιούμε όταν έχουμε μόνο μία συνθήκη ή δήλωση.



Μέθοδος 2: Χρησιμοποιώντας τον χειριστή 'OR'.

πίνακας [ ( πίνακας < συνθήκη 1 ) | ( πίνακας > συνθήκη 2 ) ]

Σε αυτή τη μέθοδο, 'array' είναι το όνομα του πίνακα από τον οποίο θα φιλτράρουμε τις τιμές και η συνθήκη μεταβιβάζεται σε αυτόν. Χειριστής '|' χρησιμοποιείται για την αναπαράσταση της συνάρτησης 'OR' που σημαίνει ότι και από τις δύο συνθήκες πρέπει να είναι αληθές. Είναι χρήσιμο όταν υπάρχουν δύο προϋποθέσεις.

Μέθοδος 3: Χρήση του χειριστή «AND».

πίνακας [ ( πίνακας < συνθήκη 1 ) & ( πίνακας > συνθήκη 2 ) ]

Στην ακόλουθη σύνταξη, 'array' είναι το όνομα του πίνακα που θα φιλτραριστεί. Ενώ, η συνθήκη θα είναι η κατάσταση όπως συζητήθηκε στην παραπάνω σύνταξη, ενώ ο τελεστής που χρησιμοποιείται '&' είναι ο τελεστής AND, που σημαίνει ότι και η συνθήκη πρέπει να είναι αληθής.

Μέθοδος 4: Φιλτράρισμα κατά καταχωρημένες τιμές

πίνακας [ π.χ. σε 1δ ( πίνακας , [ Κατάλογος αξιών ] ) ]

Σε αυτή τη μέθοδο, περάσαμε τον καθορισμένο πίνακα 'np.in1d' που χρησιμοποιείται για τη σύγκριση δύο πινάκων είτε το στοιχείο του πίνακα που πρόκειται να φιλτραριστεί υπάρχει σε έναν άλλο πίνακα είτε όχι. Και ο πίνακας περνά στη συνάρτηση np.in1d ​​που πρόκειται να φιλτραριστεί από τον δεδομένο πίνακα.

Παράδειγμα #01:

Τώρα, ας εφαρμόσουμε την προαναφερθείσα μέθοδο σε ένα παράδειγμα. Πρώτον, θα συμπεριλάβουμε τις βιβλιοθήκες NumPy που παρέχονται από την Python. Στη συνέχεια, θα δημιουργήσουμε έναν πίνακα με το όνομα 'my_array' που θα περιέχει τις τιμές '2', '3', '1', '9', '3', '5', '6' και '1'. Στη συνέχεια, θα περάσουμε τον κωδικό φίλτρου που είναι 'my_array[(my_array < 5)]' στην πρόταση εκτύπωσης που σημαίνει ότι φιλτράρουμε τις τιμές που είναι μικρότερες από '5'. Στην επόμενη γραμμή, δημιουργήσαμε έναν άλλο πίνακα ονομάτων 'πίνακας' που είναι υπεύθυνος για τις τιμές '1', '2', '6', '3', '8', '1' και '0'. Στην πρόταση εκτύπωσης, περάσαμε την προϋπόθεση ότι θα εκτυπώσουμε τις τιμές που είναι μεγαλύτερες από 5.

Τέλος, δημιουργήσαμε έναν άλλο πίνακα που ονομάσαμε 'arr'. Διατηρεί τις τιμές '6', '7', '10', '12' και '14'. Τώρα για αυτόν τον πίνακα, θα εκτυπώσουμε την τιμή που δεν υπάρχει μέσα στον πίνακα για να δούμε τι θα συμβεί εάν η συνθήκη δεν ταιριάζει. Για να γίνει αυτό, περάσαμε τη συνθήκη που θα φιλτράρει την τιμή που είναι ίση με την τιμή '5'.

εισαγωγή μουδιασμένος όπως και π.χ.

my_array = π.χ. πίνακας ( [ δύο , 3 , 1 , 9 , 3 , 5 , δύο , 6 , 1 ] )

Τυπώνω ( 'τιμές μικρότερες από 5' , my_array [ ( my_array < 5 ) ] )

πίνακας = π.χ. πίνακας ( [ 1 , δύο , 6 , 3 , 8 , 1 , 0 ] )

Τυπώνω ( 'τιμές μεγαλύτερες από 5' , πίνακας [ ( πίνακας > 5 ) ] )

αρ = π.χ. πίνακας ( [ 6 , 7 , 10 , 12 , 14 ] )

Τυπώνω ( 'τιμές ίσες με 5' , αρ [ ( αρ == 5 ) ] )

Μετά την εκτέλεση του κώδικα, έχουμε ως αποτέλεσμα την εξής έξοδο, στην οποία έχουμε εμφανίσει τις 3 εξόδους, η πρώτη είναι για τα στοιχεία μικρότερα από '5' στη δεύτερη εκτέλεση που εκτυπώσαμε τις τιμές μεγαλύτερες από '5'. Στο τέλος, εκτυπώσαμε την τιμή που δεν υπάρχει καθώς βλέπουμε ότι δεν εμφανίζει κανένα σφάλμα αλλά εμφανίζει τον κενό πίνακα, που σημαίνει ότι η επιθυμητή τιμή δεν υπάρχει στον δεδομένο πίνακα.

Παράδειγμα #02:

Σε αυτήν την περίπτωση, θα χρησιμοποιήσουμε μερικές από τις μεθόδους στις οποίες μπορούμε να χρησιμοποιήσουμε περισσότερες από μία συνθήκες για να φιλτράρουμε τους πίνακες. Για να το εκτελέσουμε, απλώς θα εισαγάγουμε τη βιβλιοθήκη NumPy και στη συνέχεια θα δημιουργήσουμε έναν μονοδιάστατο πίνακα μεγέθους '9' με τιμές '24', '3', '12', '9', '3', '5', '2', '6' και '7'. Στην επόμενη γραμμή, χρησιμοποιήσαμε μια πρόταση εκτύπωσης στην οποία έχουμε περάσει έναν πίνακα που αρχικοποιήσαμε με το όνομα 'my_array' με τη συνθήκη ως όρισμα. Σε αυτό, έχουμε περάσει το ή συνθήκη που σημαίνει και από τα δύο, μια προϋπόθεση πρέπει να είναι αληθής. Εάν και τα δύο είναι αληθή, θα εμφανίσει τα δεδομένα και για τις δύο συνθήκες. Σε αυτήν την κατάσταση, θέλουμε να εκτυπώσουμε τις τιμές που είναι μικρότερες από '5' και μεγαλύτερες από '9'. Στην επόμενη γραμμή, χρησιμοποιήσαμε τον τελεστή AND για να ελέγξουμε τι θα συμβεί εάν χρησιμοποιήσουμε μια συνθήκη για να φιλτράρουμε τον πίνακα. Σε αυτήν την συνθήκη, εμφανίσαμε τιμές που είναι μεγαλύτερες από '5' και μικρότερες από '9'.

Εισαγωγή numpy όπως και π.χ.

my_array = π.χ. πίνακας ( [ 24 , 3 , 12 , 9 , 3 , 5 , δύο , 6 , 7 ] )

Τυπώνω ( «αξίες μικρότερες από 5 ή μεγαλύτερος από 9 , my_array [ ( my_array < 5 ) | ( my_array > 9 ) ] )

Τυπώνω ( «αξίες μεγαλύτερες από 5 και λιγότερο από 9 , my_array [ ( my_array > 5 ) & ( my_array < 9 ) ] )

Όπως φαίνεται στο παρακάτω απόσπασμα, εμφανίζεται το αποτέλεσμά μας για τον παραπάνω κώδικα στο οποίο φιλτράραμε τον πίνακα και πήραμε το ακόλουθο αποτέλεσμα. Όπως μπορούμε να δούμε οι τιμές μεγαλύτερες από 9 και μικρότερες από 5 εμφανίζονται στην πρώτη έξοδο και οι τιμές μεταξύ 5 και 9 αγνοούνται. Ενώ, στην επόμενη γραμμή, έχουμε εκτυπώσει τις τιμές μεταξύ «5» και «9» που είναι «6» και «7». Οι άλλες τιμές των πινάκων δεν εμφανίζονται.

συμπέρασμα

Σε αυτόν τον οδηγό, έχουμε συζητήσει εν συντομία τη χρήση των μεθόδων φίλτρου που παρέχονται από το πακέτο NumPy. Έχουμε εφαρμόσει πολλά παραδείγματα για να σας εξηγήσουμε τον καλύτερο τρόπο εφαρμογής των μεθοδολογιών φίλτρων που παρέχονται από το Numpy.