2016-06-07 73 views
0

之間的差異我對Numpy來說是個新手,我無法找到符合我要求的任何東西。numpy count其中值大於

有沒有什麼好的方法來做count.where(value-value2> threshold)?

我有斧,y位置numpy的陣列和我需要計數最近的鄰居類似於此

東西:

[(93, 256), (93, 256), (93, 256), (93, 257), (54, 130), (55,131)]

我有93/256-257和2 4個鄰居在54-55/130-131

+0

你的'value-value2'實際上並不是應用於元組的成員,而是應用於兩個不同的元組?你有一個度量來獲得兩個元組之間的距離嗎? – pekapa

回答

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)) 

希望這有助於。

0

有一個合適的計算鄰居的方法 - numpy.isclose(a, b, atol)。一系列的4內的下列計算鄰居:

threshold = 4 
np.isclose([93, 256], [94, 256], atol=threshold) 

結果計算到元組兩點:

[True, True] 

也許會有所幫助。