Выберите значения из массива в зависимости от условия - PullRequest
0 голосов
/ 24 апреля 2019

У меня есть серия X, содержащая N значений. Я хотел бы выбрать значения X с учетом условия X [i]> V. Я думаю, что-то вроде:

Y = X[(X[:] > V)]

Будет работать. Сейчас я получаю нулевое множество, хотя знаю, что подмножество значений в X удовлетворяет этому условию.

Я пишу это неправильно?

1 Ответ

1 голос
/ 24 апреля 2019

Код, который вы даете, является правильным, если вы хотите сравнить каждый X[i] с каждым V[i].Обратите внимание

>>> import numpy as np
>>> x = np.array(range(5))
>>> v = np.array([3]*5)
>>> x[x > v]
array([4])

Если оригинал - это то, что вы хотели, повторно проверьте ваши x и v.Обратите внимание, что вам не нужно добавлять пустое понимание [:] к x, хотя это не изменит вывод.То, что вы хотите (утверждая, что это не работает), все x больше, чем любой элемент V?Если это так, возьмите мин v и выполните ту же маску

x[x > np.min(v)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...