如何在python中检查列是否具有特定的日期格式或未使用DATETIME?
我是python新手。我有一个数据框,其中有一个日期列,它有不同的格式。我想检查它是否遵循特定的日期格式。我不明白,我想放弃它。我尝试过使用try-except并对行进行迭代。但我正在寻找一种更快的方法来检查列是否遵循特定的日期格式<代码>如果它不在后面,那么它必须放下。有没有更快的方法?使用日期时间库?如何在python中检查列是否具有特定的日期格式或未使用DATETIME?,python,dataframe,date,datetime,date-formatting,Python,Dataframe,Date,Datetime,Date Formatting,我是python新手。我有一个数据框,其中有一个日期列,它有不同的格式。我想检查它是否遵循特定的日期格式。我不明白,我想放弃它。我尝试过使用try-except并对行进行迭代。但我正在寻找一种更快的方法来检查列是否遵循特定的日期格式如果它不在后面,那么它必须放下。有没有更快的方法?使用日期时间库? My code: Date_format = %Y%m%d df = Date abc 0 2020-03-22 q 1 03-12-2020 w 2 55552020
My code:
Date_format = %Y%m%d
df =
Date abc
0 2020-03-22 q
1 03-12-2020 w
2 55552020 e
3 25122020 r
4 12/25/2020 r
5 1212202033 y
Excepted out:
Date abc
0 2020-03-22 q
你可以试试
pd.to_datetime(df.Date, errors='coerce')
0 2020-03-22
1 2020-03-12
2 NaT
3 NaT
4 2020-12-25
5 NaT
然后很容易删除空值
编辑:
对于给定的格式,您仍然可以利用pd.to\u datetime
:
datetimes = pd.to_datetime(df.Date, format='%Y-%m-%d', errors='coerce')
datetimes
0 2020-03-22
1 NaT
2 NaT
3 NaT
4 NaT
5 NaT
df.loc[datetimes.notnull()]
另请注意,我使用的格式是
%Y-%m-%d
,我认为这是基于您的预期输出(不是您作为Date\u格式提供的格式)谢谢,但我已经尝试过了。我不想更改格式,我只想检查它们是否处于特定模式。哦,该死!我忘了添加格式。请再检查一下。我已经非常感谢你了:)