Извлеките все минимумы из массива: - PullRequest
0 голосов
/ 27 мая 2019

Предположим, у меня есть массив в numpy, который гласит:

arr = np.array([[1,2,7,6],[2,3,2,1],[10,8,1,3],[9,7,4,2], [np.nan, np.nan, np.nan, np.nan]])

Я хотел бы извлечь все записи, где окружающие записи превосходят.Этакий «локальный минимум» такой, что я получаю следующие индексы:

indices = [(0,0), [(2,2), (2,3)]]

Обратите внимание, что вторым элементом в списке является список кортежей.Я хотел бы, чтобы такой алгоритм мог идентифицировать локальные минимальные области, а также локальные минимальные точки.Значения NAN следует просто игнорировать и рассматривать как «границу».

Я попытался поиграться с np.gradient, потому что я думал, что это должно позволить мне извлечь части, где производная равна 0. Но я не мог действительно добраться до точки, где это будет работать.

Существуют ли какие-либо библиотеки или готовые функциональные возможности для достижения этой цели?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...