Heim >Backend-Entwicklung >Python-Tutorial >Wie finde ich effizient Zeilenindizes, die mit Werten in einem NumPy-Array übereinstimmen?
Angesichts eines Arrays X und eines Arrays „searched_values“ besteht die Aufgabe darin, die Indizes von Zeilen in Ansatz mit NumPy Broadcasting
3. Speichereffizienter Ansatz mit np.ravel_multi_index und np.in1dnp.where((X==searched_values[:,None]).all(-1))[1]4. np.ravel_multi_index verstehen
dims = X.max(0)+1 out = np.where(np.in1d(np.ravel_multi_index(X.T,dims),\ np.ravel_multi_index(searched_values.T,dims)))[0]
5. Auswählen von Dimensionen für eindeutige lineare Indizes
np.ravel_multi_index(X.T,dims)Berücksichtigen Sie bei der Auswahl von Dimensionen für np.ravel_multi_index zum Generieren eindeutiger linearer Indizes Folgendes:
Um eindeutige lineare Indizes sicherzustellen, sollte die maximale Ausdehnung jeder Achse berücksichtigt werden, die das Maximum darstellt Wert in jeder Spalte plus 1.
Das obige ist der detaillierte Inhalt vonWie finde ich effizient Zeilenindizes, die mit Werten in einem NumPy-Array übereinstimmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!