如何查找3D數組中最大值的座標如果我想查找它們的全部座標?在Numpy數組中如何查找值的所有座標
這是我的代碼到目前爲止,但它不工作,我不明白爲什麼。
s = set()
elements = np.isnan(table)
numbers = table[~elements]
biggest = float(np.amax(numbers))
a = table.tolist()
for x in a:
coordnates = np.argwhere(table == x)
if x == biggest:
s.add((tuple(coordinates[0]))
print(s)
例如:
table = np.array([[[ 1, 2, 3],
[ 8, 4, 11]],
[[ 1, 4, 4],
[ 8, 5, 9]],
[[ 3, 8, 6],
[ 11, 9, 8]],
[[ 3, 7, 6],
[ 9, 3, 7]]])
應該返回s = {(0, 1, 2),(2, 1, 0)}
有沒有理由不使用Numpy? –
我試過使用Numpy,我只是沒有找到一個能夠返回所有座標的特定函數,是不是有一個? – Jana
'np.argwhere(table == table.max())'''array([[0,1,2],[2,1,0]])''。 –