j in zar
будет сравнивать j
с каждым элементом индекса zar
.
Например,
0 in zar
# True
0 in zar.index
# True
Это также согласуется с поведением DataFrames, для которого in
по умолчанию выполняет проверку членства в столбцах.
df = pd.DataFrame(columns=['a', 'b', 'c'])
'a' in df
# True
'd' in df
# False
Вам понадобится Series.eq
(==
оператор) или Series.isin
вместе с Series.any
.
(zar == j).any()
Подробности
zar == j
возвращает серию bools:
(zar == j)
0 False
1 False
2 False
3 False
4 False
5 True
6 False
7 False
8 False
9 False
Name: zar, dtype: bool
Затем вы вызываете any
, который возвращает True, если какая-либо из строк имеет значение True.Если вы хотите индекс True, используйте np.flatnonzero
:
np.flatnonzero(zar == j)
# array([5])