我对Numpy很陌生,我无法找到符合我要求的任何内容。
有没有什么好方法可以进行count.where(value-value2> threshold)?
我有一个x,y位置numpy数组,我需要计算最近的邻居
类似的东西:
[(93, 256), (93, 256), (93, 256), (93, 257), (54, 130), (55,131)]
我在93 / 256-257上有4个邻居,在54-55 / 130-131上有2个
答案 0 :(得分:0)
如果您只想计算出现次数:
条件为value1 - value0 > 100
x = np.array([[93, 256], [93, 256], [93, 256], [93, 257], [54, 130], [55, 131]])
y = np.where(x[:,1] - x[:,0] > 100)
print(y[0].shape[0])
如果x和y坐标都有条件,那么你可以这样做:
y = np.where((x[:,1] - 256 < 10) & (x[:,0] - 50 > 40))
希望这有帮助。
答案 1 :(得分:0)
有一种合适的计算邻居的方法 - numpy.isclose(a, b, atol)。以下计算范围为4的邻居:
threshold = 4
np.isclose([93, 256], [94, 256], atol=threshold)
计算元组中两个点的结果:
[True, True]
也许它会有所帮助。