繁体   English   中英

在二维 numpy 中查找最近的一维数组

[英]Find Closest 1D array in 2D numpy

我试图从二维数组中找到一维数组的最佳匹配。

arr1 = np.array([[1, 1, 1], [2, 2, 2]])

arr2 = np.array([1.1, 1.1, 1.1])

我怎样才能让它返回最佳匹配,即行 0 最好作为行的索引?

假设“最接近”意味着最小的绝对差异,请尝试以下操作:

idx = np.abs(arr1 - arr2).sum(axis=1).argmin()  # 0

绝对差异np.absolute

np.abs(arr1 - arr2)
[[0.1 0.1 0.1]
 [0.9 0.9 0.9]]

逐行总差

np.abs(arr1 - arr2).sum(axis=1)
[0.3 2.7]

闵指数argmin

np.abs(arr1 - arr2).sum(axis=1).argmin()
0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM