猿问

如何删除包含格式不正确的日期和时间值的行?

我有以下数据帧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

删除行的条件:

  1. 如果字段的格式date不符合 '%d/%m/%Y'。

  2. 如果字段的格式time与“%H:%M”不对应。

基于这两个条件,df应该删除最后 5 行以获得新的干净数据帧。

我该怎么做?谢谢。


泛舟湖上清波郎朗
浏览 205回答 1
1回答

喵喔喔

这是一种方法to_datetime,errors='coerce'如果format与输入不同,它将返回NaNs=pd.to_datetime(df.date+' '+df.time,format='%m/%d/%Y %H:%M',errors='coerce').notna()df=df[s].copy()dfOut[212]:         date   time  val10  1/17/2018  18:00  20.01  1/17/2018  18:02  21.12  1/17/2018  18:10  23.23  1/17/2018  18:12  22.0
随时随地看视频慕课网APP

相关分类

Python
我要回答