0

我有一个有趣的场景,其中日期对象如下所示:

'6/7/2018 7:59:11 PM' 

格式为 m/d/yyyy h:mm:ss PM(或 AM)。请注意,月份和小时没有用零填充。我使用 Pandas 日期对象尝试了以下代码行:

data = pd.read_csv('file.txt', sep="\t", header=None, dtype = 'str')

data.columns = ['A', 'B', 'C', ...]

data.columns 提供了文件格式的外观,全部以制表符分隔(请注意,这不是实际的代码行,只是显示列如何标记的任意方式)。时间序列在 A 列中。我尝试使用以下方法进行转换:

time = pd.to_datetime(pd.Series(data['A']), format = '%-m/%-d/%Y %-H/%M/%S %p')

回报是:

ValueError: '-' is a bad directive in format '%-m/%-d/%Y %-H/%M/%S %p'

任何有关如何解决此问题的建议将不胜感激!

4

1 回答 1

0

您的日期时间字符串是'%m/%d/%Y %H:%M:%S %p'

前任:

import pandas as pd
data = pd.DataFrame({"A": ['6/7/2018 7:59:11 PM' ]})
time = pd.to_datetime(pd.Series(data['A']), format = '%m/%d/%Y %H:%M:%S %p')
print( time )

输出:

0   2018-06-07 07:59:11
Name: A, dtype: datetime64[ns]
于 2018-06-11T15:42:09.573 回答