Найти значение в массиве с учетом нескольких условий - PullRequest
0 голосов
/ 16 апреля 2020

Вот то, что я пытаюсь достичь: если я выполню эту строку

(df[:,0] < df[2,16]).argmax()

, мне вернется первое значение в столбце 0, которое меньше, чем df [16,2] (желтый и красные линии)

Дело в том, что мне нужен код, чтобы вернуть мне СЛЕДУЮЩЕЕ время, когда значение будет ниже, чем df [16,2], в этом случае df [0,17].

Как мне добавить этот аргумент (выбрать следующий на основе позиции индекса) к этому коду?

enter image description here

1 Ответ

0 голосов
/ 16 апреля 2020

Следующий код должен дать вам полный список индексов, где условие df.iloc[:,0] < df.iloc[16,2] равно True.

  match_idx = df.index[(df.iloc[:,0] < df.iloc[16,2])==True].tolist()

Если вам требуется второй соответствующий индекс, вы можете получить его, используя match_idx[1]

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