Python数据过滤

Python数据过滤,python,pandas,Python,Pandas,我有一个excel文件,其中包含要筛选的开始日期和结束日期列 使用下面提到的代码,一切运行正常,但仍然存在一个问题 问题-当筛选数据时,它给我的结果超过结束日期。例如-如果我的结束日期是2019年5月29日,则我将得到2019年5月31日之前的结果。我只希望结果保持在截止日期之内或少于截止日期 如何做到这一点 使用的代码 df['QC开始日期]]=pd.to_datetime(df['QC开始日期]] df=df[((df['QC START DATE']>=startdateEn.get())

我有一个excel文件,其中包含要筛选的开始日期和结束日期列

使用下面提到的代码,一切运行正常,但仍然存在一个问题

问题-当筛选数据时,它给我的结果超过结束日期。例如-如果我的结束日期是2019年5月29日,则我将得到2019年5月31日之前的结果。我只希望结果保持在截止日期之内或少于截止日期

如何做到这一点

使用的代码

df['QC开始日期]]=pd.to_datetime(df['QC开始日期]]
df=df[((df['QC START DATE']>=startdateEn.get())&
(df['QC开始日期']=startdateEn.get())&
(df[“质控结束日期”]
如果我使用的开始日期为2019年1月1日,结束日期为2019年1月7日,则应进行过滤,因为我希望这些条目的结束日期为2019年1月7日,即使开始日期不在2019年1月1日之内

所以…如果我理解正确,您希望我们做的就是过滤结束日期?如果开始日期可能超出范围,则您不进行过滤。我假设您想要的是两个日期范围之间的结束日期:
start

假设您的数据为日期时间格式:

将熊猫作为pd导入
从日期时间导入日期时间
start_date=datetime_object=datetime.strtime('6/2/2018','%m/%d/%Y'))
end_date=datetime_object=datetime.strtime('12/2/2018','%m/%d/%Y'))

子集合=日期[日期[“结束日期”]。应用(lambda x:start\u date什么是
打印(df['QC start date'].dtype)
?因为如果不是日期时间,首先需要将-df['QC start date']=pd.转换为日期时间(df['QC start date'])
是的,它已经转换,除了上面提到的问题之外,其他一切都很好。如果我使用的开始日期是2019年1月1日,结束日期是2019年1月7日,那么应该进行过滤,因为我希望这些条目的结束日期是2019年1月7日,即使开始日期不在2019年1月1日
如果开始日期可以超出范围,那么您就不是f过滤它
-否,如果特定条目的开始日期超出范围,但结束日期在范围内,则我希望该条目显示为结束日期在范围内。