Извлечь значение из массива 1x3 с учетом двух других значений - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть целые числа 1x3.Учитывая пару целых чисел, как я могу извлечь третье целое число.Каждое целое число в векторе numpy уникально, и пара не будет включать себя (например, 3 и 3).

, например:

>>> nodes
array([3, 5, 7], dtype=int16)
>>> n1 = 3
>>> n2 = 7

Для данных n1, n2 и массива 1x3Я хочу среднее значение, 5.

Ответы [ 2 ]

0 голосов
/ 25 ноября 2018
>>> arr = np.array([3, 5, 7])
>>> n1 = 3
>>> n2 = 7
>>> arr[(arr != n1) & (arr != n2)][0]
5

Это работает через логическое маскирование.Сначала исключите значения, которые соответствуют двум известным значениям.Поскольку вы знаете, что останется только одно значение, просто возьмите первый элемент.

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

Используйте np.in1d для фильтрации n1 и n2 от nodes:

nodes[~np.in1d(nodes, [n1, n2])]
# array([5])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...