Heim > Backend-Entwicklung > Python-Tutorial > Wie finde ich den Wert, der einem Ziel am nächsten kommt, in einem NumPy-Array?

Wie finde ich den Wert, der einem Ziel am nächsten kommt, in einem NumPy-Array?

DDD
Freigeben: 2024-12-03 11:59:09
Original
715 Leute haben es durchsucht

How to Find the Closest Value to a Target in a NumPy Array?

Den nächstgelegenen Wert in einem Numpy-Array finden

Das Identifizieren des Werts, der einem angegebenen Ziel in einem Numpy-Array am nächsten liegt, ist eine häufige Aufgabe in der Datenverarbeitung Analyse. Um dies zu erreichen, können wir die Funktion find_nearest() nutzen.

Implementierung

Die Funktion find_nearest() verwendet ein Array und einen Zielwert als Eingaben. Unten ist eine Python-Implementierung:

import numpy as np

def find_nearest(array, value):
    array = np.asarray(array)
    idx = (np.abs(array - value)).argmin()
    return array[idx]
Nach dem Login kopieren

Die Funktion konvertiert bei Bedarf zunächst das Array in ein Numpy-Array. Anschließend wird die absolute Differenz zwischen jedem Element des Arrays und dem Zielwert berechnet. Der Index des Elements mit der kleinsten absoluten Differenz wird mit argmin() ermittelt. Schließlich wird das Element an diesem Index als nächstgelegener Wert zurückgegeben.

Beispielverwendung

Betrachten Sie beispielsweise ein Array von Zufallszahlen:

array = np.random.random(10)
print(array)
Nach dem Login kopieren

Um den Wert zu finden, der in diesem Array am nächsten bei 0,5 liegt, können wir Folgendes verwenden:

print(find_nearest(array, value=0.5))
Nach dem Login kopieren

Dadurch wird ein Wert ausgegeben, der nahe beieinander liegt auf 0,5, z. B. 0,568743859261.

Das obige ist der detaillierte Inhalt vonWie finde ich den Wert, der einem Ziel am nächsten kommt, in einem NumPy-Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage