Наиболее эффективный способ удаления элементов из массива np с использованием условия - PullRequest
0 голосов
/ 19 июня 2019

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

A =  [  [5, 8, 6, 2], 
        [5, 8, 6, 2], 
        [...], ...       ]

Допустим, у меня есть еще один массив 1D numpy, который выглядит примерно как массив B, но имеет значения, соответствующие каждому из списков внутри A.

B = [0.4, 0.6, 0.3, ...]

Теперь я хочу удалить любой список в списке, который имеет соответствующее значение в B, которое больше 0,5 (это может быть представлено переменной с именем thresh). Полученный массив должен выглядеть так (поскольку второй список имеет большее значение):

C =  [  [5, 8, 6, 2], 
        [...], ...       ]

Я ищу хороший / 1016 * основанный / питонический способ достижения этого. Я знаю np.delete, но не понимаю, как использовать его здесь с условием.

1 Ответ

1 голос
/ 19 июня 2019

Как насчет условия Boolean ломтик

A[B<0.5]
Out[197]: 
array([[5, 8, 6, 2],
       [1, 1, 1, 1]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...