如何找到给定数字与 Python 列表中每个元素之间的最小差异?
How do I find the smallest difference between a given number and every element in a list in Python?
假设我有:
[1, 2, 3, 4]
和整数
6
我想将 6
与列表中的每个元素和 return 具有最小绝对值差异的元素进行比较,在本例中为 4
。有有效的Numpy
方法吗?
可以在绝对差上使用argmin
来提取索引,然后可以用来提取元素:
a = np.array([1, 2, 3, 4])
a[np.abs(a - 6).argmin()]
# 4
假设我有:
[1, 2, 3, 4]
和整数
6
我想将 6
与列表中的每个元素和 return 具有最小绝对值差异的元素进行比较,在本例中为 4
。有有效的Numpy
方法吗?
可以在绝对差上使用argmin
来提取索引,然后可以用来提取元素:
a = np.array([1, 2, 3, 4])
a[np.abs(a - 6).argmin()]
# 4