2015-12-31 3 views
2

Учитывая матрицу, как следующее:Индекс элемента в массиве Numpy

A = np.array([[1,2,3], 
      [3,4,5], 
      [4,5,6]]) 

Как я могу определить индекс элемента, представляющего интерес. Например, предположим, что я хотел бы найти индекс 2 в первой строке np.array, например: A[0,:].index(2), но ясно, что это не работает, потому что A[0,:] - это не список.

ответ

3

Вы можете сравнить массив со значением 2, а затем использовать where.

Например, чтобы найти расположение 2 в первом ряду A:

In [179]: np.where(A[0, :] == 2)[0] 
Out[179]: array([1]) 

In [180]: j = np.where(A[0, :] == 2)[0] 

In [181]: A[0, j] 
Out[181]: array([2]) 

where также работает с более высокой размерности массивов. Например, чтобы найти 2 в полном массиве A:

In [182]: i, j = np.where(A == 2) 

In [183]: A[i,j] 
Out[183]: array([2]) 
Смежные вопросы