Αναζήτηση Αρχείου NumPy

αναζήτηση πίνακα

Μπορείτε να αναζητήσετε (ανακτήσετε) μια τιμή από τον πίνακα και να επιστρέψετε τους δεικτες που ταιριάζουν.

Για να αναζητήσετε έναν πίνακα, χρησιμοποιήστε where() μέθοδος.

Παράδειγμα

αναζήτηση των δεικτών τιμών που είναι 4:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 4, 4])
x = np.where(arr == 4)
print(x)

Εκτέλεση Παραδείγματος

στο παράδειγμα αυτό θα επιστρέψει έναν τύπο:(array([3, 5, 6],)

ορίζει ότι η τιμή 4 εμφανίζεται στους δείκτες 3, 5 και 6.

Παράδειγμα

αναζήτηση των δεικτών τιμών που είναι αριθμοίζυγος

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7, 8])
x = np.where(arr%2 == 0)
print(x)

Εκτέλεση Παραδείγματος

Παράδειγμα

αναζήτηση των δεικτών τιμών που είναι αριθμοί奇

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7, 8])
x = np.where(arr%2 == 1)
print(x)

Εκτέλεση Παραδείγματος

αναζήτηση σειράς

υπάρχει ένα όνομα searchsorted() η μέθοδος, η οποία εκτελεί δυαδική αναζήτηση σε πίνακα και επιστρέφει τον δείκτη όπου θα εισάγεται η καθορισμένη τιμή για να διατηρηθεί η τάξη αναζήτησης.

προσδοκώ searchsorted() Η μέθοδος χρησιμοποιείται για την ταξινόμηση πινάκων.

Παράδειγμα

Αναζητήστε την ινδάλμα όπου θα πρέπει να εισαχθεί η τιμή 7:

import numpy as np
arr = np.array([6, 7, 8, 9])
x = np.searchsorted(arr, 7)
print(x)

Εκτέλεση Παραδείγματος

Παράδειγμα Επεξήγησης:Πρέπει να εισαχθεί ο αριθμός 7 στην ινδάλμα 1 για να διατηρηθεί η σειρά.

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

Αναζήτηση από τα δεξιά

Από default, επιστρέφει την αριστερή ινδάλμα, αλλά μπορούμε να δώσουμε side='right'για να επιστρέψει την δεξιά ινδάλμα.

Παράδειγμα

Αναζητήστε την ινδάλμα όπου θα πρέπει να εισαχθεί η τιμή 7 από τα δεξιά:

import numpy as np
arr = np.array([6, 7, 8, 9])
x = np.searchsorted(arr, 7, side='right')
print(x)

Εκτέλεση Παραδείγματος

Παράδειγμα Επεξήγησης:Πρέπει να εισαχθεί ο αριθμός 7 στην ινδάλμα 2 για να διατηρηθεί η σειρά.

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

Πολλές τιμές

Για να αναζητηθούν πολλές τιμές, χρησιμοποιήστε πίνακα με τις καθορισμένες τιμές.

Παράδειγμα

Αναζητήστε τις ινδάλματα όπου θα πρέπει να εισαχθούν οι τιμές 2, 4 και 6:

import numpy as np
arr = np.array([1, 3, 5, 7])
x = np.searchsorted(arr, [2, 4, 6])
print(x)

Εκτέλεση Παραδείγματος

Η επιστροφή είναι ένας πίνακας:[1 2 3] Συνέχεια με τρεις δείκτες, από τους οποίους θα εισαχθούν 2, 4, 6 στο αρχικό σύνολο για να διατηρηθεί η σειρά.