Панды получают идентификатор строки на основе условия - PullRequest
1 голос
/ 20 октября 2019

У меня есть следующий DataFrame:

Date          best    a    b    c    d
1990-01-01    a       5    4    7    2
1991-01-02    c       10   1    2    0
1992-01-03    d       2    1    4    12
1993-01-04    a       5    8    11   6

Я хочу получить идентификатор строки, где df['Date' == '1992-01-03'].

Ожидаемое возвращение 2.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 20 октября 2019

Вы также можете использовать np.where:

np.where(df.Date=='1992-01-03')
1 голос
/ 20 октября 2019

Для этого вам нужно получить доступ к индексу DataFrame и получить его идентификатор. Следуя объяснениям https://stackoverflow.com/a/21800319/3921457 и предполагая, что ваш объект называется df, вы можете сделать что-то вроде:

ids = df.index[df['Date'] == '1992-01-03'].tolist()
print(ids)
# [2]

Если Date уже является индексом DataFrame, вы можетеперейти к числовому индексированию, просто набрав: df = df.reset_index().

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