Initial "ImportDate" datatype Initial Pandas Dataframe interested in "ImportDate
问题陈述-
我想提取“ ImportDate”持续到“ 1-1-2019”的数据。例如-start_date至1-1-2019。我尝试将“对象”转换为“ datetime64 [ns]”,并将代码写为
df[df['ImportDate'].between(4/26/2018, 1/1/2019)]
但是在提取数据时导致错误:
"'>=' not supported between instances of 'str' and 'float"
有人可以帮助我处理我的问题陈述吗?
答案 0 :(得分:0)
您说的那列是日期时间,实际上是日期时间吗?来自您发布的错误,看起来好像不是。请使用df.dtypes再次检查。如果它不是日期时间对象,则将其转换为日期时间,例如使用df['ImportDate']= pd.to_datetime(df['ImportDate'],format='%d/%m/%y')
(您必须调整参数以适合您的数据)。然后,您可以df[df['ImportDate'].between(start_date,end_date)]
答案 1 :(得分:0)
我的猜测是您在between
函数中输入的不是日期。您应该尝试将它们转换:
df[df['ImportDate'].between(pd.to_datetime("4/26/2018"), pd.to_datetime("1/1/2019"))]
或直接创建日期对象:datetime.date(2019,1,1)
(不要忘记import datetime
)。
如前所述,检查是否可以提供数据会更容易。