поиск pandas для значения больше, чем число - PullRequest
1 голос
/ 27 января 2020

У меня есть следующие данные:

    toggle_day  Diff
Date        
2000-01-04  True    NaT
2000-01-11  True    7 days
2000-01-24  True    13 days
2000-01-28  True    4 days
2000-02-09  True    12 days
... ... ...
2019-08-14  True    2 days
2019-08-23  True    9 days
2019-10-01  True    39 days
2019-10-02  True    1 days
2019-10-08  True    6 days
677 rows × 2 columns

Я хочу увидеть даты, когда Diff превышает 20 дней. Чтобы сделать это, я сделал что-то вроде этого: df1[df1.diff > 20 days] Это неправильно, я думаю, потому что мне нужно сказать это days в datetime. Я пробовал df1[df1.diff > datetime.datetime(20)], но это тоже не работает:

TypeError: в функции отсутствует обязательный аргумент 'month' (pos 2)

Как мне найти Diff для дней, превышающих число.

1 Ответ

1 голос
/ 27 января 2020

Первая идея - сравнить по timedeltas:

df[df['Diff'] > pd.Timedelta(1, 'd')]

Или вы можете преобразовать timedeltas в дни по Series.dt.days и сравнить по номеру:

df[df['Diff'].dt.days > 1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...