通过不同的时间戳格式过滤数据帧

时间:2020-06-12 09:58:58

标签: pandas dataframe timestamp

我有一个带有时间戳功能的数据框,例如具有两种不同的格式

created                     name
2020-04-30T20:06:00.000Z    Back
--T::00.000Z                Summary
2020-04-30T20:05:00.000Z    Recalculate
2020-04-30T20:05:00.000Z    Recalculate
--T::00.000Z                Recalculate

我想过滤此数据框,以便仅获取格式正确的时间戳记'yyyy-mm-ddTHH:MM:SS.000Z',即获取数据框

created                     name
2020-04-30T20:06:00.000Z    Back
2020-04-30T20:05:00.000Z    Recalculate
2020-04-30T20:05:00.000Z    Recalculate

如何按时间戳格式过滤?

1 个答案:

答案 0 :(得分:0)

使用pd.to_datetime和可选参数errors=coercecreated列转换为一系列的熊猫日期时间,然后使用Series.notna创建一个布尔掩码,并使用此掩码进行过滤数据框:

m = pd.to_datetime(df['created'], errors='coerce').notna()
df = df[m]

# print(df)
                    created         name
0  2020-04-30T20:06:00.000Z         Back
2  2020-04-30T20:05:00.000Z  Recalculate
3  2020-04-30T20:05:00.000Z  Recalculate