我有以下DataFrame df
:
df =
date time val1
1/17/2018 18:00 20.0
1/17/2018 18:02 21.1
1/17/2018 18:10 23.2
1/17/2018 18:12 22.0
17/1/2018 18:12 22.1
17-Jan-2018 18:12 22.0
1/18/2018 60 22.1
aa 17:30 23.3
17/1/20188 18:00 19.0
删除行的条件:
date
的格式与'%d /%m /%Y'不对应。time
的格式不对应于“%H:%M”。基于这两个条件,应删除df
中的最后5行以获得新的干净数据框。
我该怎么办? 谢谢。
答案 0 :(得分:3)
如果to_datetime
与输入不同,则返回errors='coerce'
和format
的一种方法,它将返回NaN
s=pd.to_datetime(df.date+' '+df.time,format='%m/%d/%Y %H:%M',errors='coerce').notna()
df=df[s].copy()
df
Out[212]:
date time val1
0 1/17/2018 18:00 20.0
1 1/17/2018 18:02 21.1
2 1/17/2018 18:10 23.2
3 1/17/2018 18:12 22.0