Pandas to_datetime错误"未转换的数据仍然存在"

2024-09-27 21:24:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将Pandas数据帧中的日期列转换为datetime格式。如果我不指定日期格式,它工作得很好,但是在代码中,由于时间格式不同,我会遇到一些问题。在

在欧洲日期格式中,原始日期看起来是10/10/2019 6:00。在

我尝试指定如下格式:

df['PeriodStartDate'] = pd.to_datetime(df['PeriodStartDate'], 
          format="%d/%m/%Y")

这会导致错误:unconverted data remains 6:00

然后,我试图将format指令更新为format="%d/%m/%Y %-I/%H",但又出现了另一个错误:'-' is a bad directive in format '%d/%m/%Y %-I/%H',尽管我认为{}使用相同的指令和strftime,而在后者中{}是允许的。在

在沮丧中,我决定砍掉绳子的末端,因为我真的不需要时间和分钟:

^{pr2}$

但这又一次导致了一个错误:ValueError: unconverted data remains:这当然是因为有些日期有9个数字,比如3/10/2019 6:00

不太清楚从这里到哪里去。在


Tags: 数据代码formatpandasdfdatadatetime格式
2条回答

哦,我觉得很蠢。我发现了问题所在。出于某些原因,我认为小时是12小时格式,但实际上是24小时格式,所以将指令改为"%d/%m/%Y %H:%M"就解决了这个问题。在

格式%H:%M可以工作(别忘了中间的:

pd.to_datetime('10/10/2019 6:00', format="%m/%d/%Y %H:%M")

Out[1049]: Timestamp('2019-10-10 06:00:00')

pd.to_datetime('3/10/2019 18:00', format="%d/%m/%Y %H:%M")

Out[1064]: Timestamp('2019-10-03 18:00:00')

相关问题 更多 >

    热门问题