2015-04-17 2 views
0

Отредактировано, так как мой последний вопрос был дубликат, но я тоже борюсь с этим. Я в настоящее время работаю с матрицей и могу легко найти наибольший элемент сNumPy: нахождение N наибольших элементов в матрице

M[M != 1].max() 

Однако, я заинтересован в получении N крупнейших элементов и не могу найти простой способ сделать это с помощью матриц. Есть ли эффективное решение?

+4

Привет @ planner15 - по ссылке, 'np.where (M == M [! M = 0] .min()) 'должен возвращать индексы строк и столбцов, соответствующие минимальному элементу. –

+0

Пересмотренный вопрос по-прежнему является дубликатом, см. [Этот вопрос] (http://stackoverflow.com/q/10337533/2379410) и [этот вопрос] (http://stackoverflow.com/q/6910641/2379410) для нахождения индексов. –

+0

@moarningsun Я видел их, но они предназначены для массивов. Стали ли они применяться к матрицам? – planner15

ответ

0

Да есть where метод, который принимает условие как один из параметров,

minimum = M[M != 0].min() 

print numpy.where(M==minimum) 
Смежные вопросы