【发布时间】:2020-06-11 23:24:08
【问题描述】:
我有 DataFrame,其中有一列包含事件日期(日期不是唯一的)。我需要选择此期间的所有数据。我下一个试试:
start_day = datetime.date(datetime.strptime(start_day, '%d.%m.%Y')) #change user data to date format
end_day = datetime.date(datetime.strptime(end_day, '%d.%m.%Y'))
df = df[df['Transaction_date'].between(start_day, end_day)]
列Transaction_date 的类型是datetime64[ns]。
当我以01/01/2020 到31/01/2020 期间的请求运行代码时 - 指定期间的部分数据丢失(信息仅显示 21 天,应该是 31 天)。
我看到数据框包含整个请求期间的数据。 你能帮我吗,我的错误在哪里?
【问题讨论】:
-
你能显示
print(df[~df['Transaction_date'].between(start_day, end_day)].shape)的输出吗(在你的代码之后添加) -
这能回答你的问题吗? Filtering Pandas DataFrames on dates
-
在此之后: print(df[~df['Transaction_date'].between(start_day, end_day)].shape) 我得到下一个输出:(0,12)