Уменьшите логические значения в Python ndarray, используя AND - PullRequest
0 голосов
/ 25 октября 2018

У меня есть массив Python этой формы [3, 1000, 3] с логическими значениями внутри.Первый 3 - это размер пакета, а значения пакета выглядят следующим образом:

[[False, False, False]\n
 [False, True, True]\n
 [False, False, True]\n
 [True, True, True]\n
 ...
]
size (1000, 3)

Я хочу применить функцию and к каждому триплету, чтобы получить новый массив

[[False]\n
 [False]\n
 [False]\n
 [True]\n
 ...
]
size (3, 1000)

Глядя на numpy Я не нашел ничего полезного.Я также пытался импортировать operator и применять reduce(operator.and_, array), но это не работает.

Есть идеи, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 25 октября 2018

Вы можете легко сделать это, используя np.all .Это проверит, являются ли все значения по последнему измерению True:

y = np.all(arr, axis=-1)
y.shape # (3, 1000)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...