我需要从多种时间格式中获取时间戳,例如:
df['date'] = [29.05.2023 01:00:00,
29.05.2023,
28.05.2023 23:00:00]
在每天的00:00:00,时间丢失,仅记录日期。我需要时间戳看起来像这样:
df['date'] = [29.05.2023 01:00:00,
29.05.2023 00:00:00,
28.05.2023 23:00:00]
4条答案
按热度按时间qrjkbowd1#
使用带有
dayfirst=True
参数的to_datetime
,对于最终输出DD.MM.YYYY HH:MM:SS
,使用Series.dt.strftime
:jv2fixgn2#
试着做:
在许多情况下,它将工作在所有熟悉的格式,您可以尝试添加:,format='mixed':
dsf9zpds3#
您可以通过转换为混合格式的
datetime
,然后将输出格式设置为您选择的格式:输出:
hc8w905p4#
Pandas pd.to_datetime() 通过三个选项支持日期时间不一致
错误'ignore','raise','coerce'},默认值'raise'
如果为'raise',则无效的解析将引发异常。
如果为'coerce',则无效解析将被设置为NaT。
如果为'ignore',则无效的解析将返回输入。
在这种情况下,可以使用coerce。
步骤1:创建 Dataframe 与所有不一致的datetime格式字符串
步骤2:将它们转换为datetime对象
第三步:然后,可以用默认值填充缺少的部分; 00:00:00或其他特定时间。
然后,输出将是一致的。