我正在尝试从数据集中创建一个日期范围的变量。我有 70,000 行,每行都附有日期。我使用格式
"todays_date"
将名为 obj
的日期列从 datetime
更改为 "MM-DD-YY"
,但现在无法弄清楚如何过滤任何日期。
例如,假设我想创建一个变量,例如:
early_instances = (*all of the instances taking place before 03-23-23*)
或
later_instances = (*all of the instances taking place between 03-24-23 and 11-12-23*)
我尝试按列值进行过滤,例如:
early_instances = data['todays_date'] <= data['todays_date']['04-20-20']
当我这样做时,我似乎要么得到
keyerrors
要么out of range errors
,但我不明白为什么我会得到。
我也尝试过使用
pd.date_range()
但这似乎只返回一个日期列表,我试图过滤数据框以仅包含我正在查找的日期,不一定只将日期拉入列表中。
这是更改日期时间格式或误解日期时间结构的问题吗?如果没有的话,有人可以建议一种更好的方法在 pandas df 中按日期过滤或组织吗?
提前道歉,因为我看到这个问题已经以各种格式被问过好几次了,但我浏览了几个,但不明白与我想做的事情相关的任何其他帖子。
你应该像对待任何其他价值观一样工作
mask = (data['todays_date'] < "03-23-23")
early_instances = data[mask]
或更短
early_instances = data[ data['todays_date'] < "03-23-23" ]