Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Mencari Nilai Terdekat dengan Sasaran dalam Array NumPy?

Bagaimana untuk Mencari Nilai Terdekat dengan Sasaran dalam Array NumPy?

DDD
Lepaskan: 2024-12-03 11:59:09
asal
708 orang telah melayarinya

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

Mencari Nilai Terdekat dalam Tatasusunan Numpy

Mengenal pasti nilai yang paling hampir dengan sasaran yang ditentukan dalam tatasusunan numpy ialah tugas biasa dalam data analisis. Untuk mencapai matlamat ini, kita boleh memanfaatkan fungsi find_nearest().

Pelaksanaan

Fungsi find_nearest() mengambil tatasusunan dan nilai sasaran sebagai input. Di bawah ialah pelaksanaan Python:

import numpy as np

def find_nearest(array, value):
    array = np.asarray(array)
    idx = (np.abs(array - value)).argmin()
    return array[idx]
Salin selepas log masuk

Fungsi ini mula-mula menukar tatasusunan kepada tatasusunan numpy jika diperlukan. Ia kemudian mengira perbezaan mutlak antara setiap elemen tatasusunan dan nilai sasaran. Indeks elemen dengan perbezaan mutlak terkecil ditentukan menggunakan argmin(). Akhir sekali, elemen pada indeks ini dikembalikan sebagai nilai terdekat.

Contoh Penggunaan

Sebagai contoh, pertimbangkan tatasusunan nombor rawak:

array = np.random.random(10)
print(array)
Salin selepas log masuk

Untuk mencari nilai terdekat kepada 0.5 dalam tatasusunan ini, kita boleh menggunakan:

print(find_nearest(array, value=0.5))
Salin selepas log masuk

Ini akan mengeluarkan nilai hampir 0.5, seperti 0.568743859261.

Atas ialah kandungan terperinci Bagaimana untuk Mencari Nilai Terdekat dengan Sasaran dalam Array NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan