Python 无法将dataframe列转换为24小时格式的日期时间

Python 无法将dataframe列转换为24小时格式的日期时间,python,datetime,pandas,dataframe,Python,Datetime,Pandas,Dataframe,我的数据帧中有一个timestamp列,它最初是str类型。一些示例值: '6/13/2015 6:45:58 AM' '6/13/2015 7:00:37 PM' 我使用以下代码将此值转换为24小时格式的datetime: df['timestampx'] = pd.to_datetime(df['timestamp'], format='%m/%d/%Y %H:%M:%S %p') 我得到了这个结果: 2015-06-13 06:45:58 2015-06-13 07:00:37 这意

我的数据帧中有一个
timestamp
列,它最初是
str
类型。一些示例值:

'6/13/2015 6:45:58 AM'
'6/13/2015 7:00:37 PM'
我使用以下代码将此值转换为24小时格式的datetime:

df['timestampx'] = pd.to_datetime(df['timestamp'], format='%m/%d/%Y %H:%M:%S %p')
我得到了这个结果:

2015-06-13 06:45:58
2015-06-13 07:00:37

这意味着,日期不转换为24小时格式,我也失去了上午/下午信息。有什么帮助吗?

您将其作为24小时时间阅读,但实际上当前格式不是24小时时间,而是12小时时间。把它读成12小时,加上后缀(AM/PM),然后如果需要的话,你可以在24小时后输出

df = pd.DataFrame(['6/13/2015 6:45:58 AM','6/13/2015 7:00:37 PM'], columns = ['timestamp'])
df['timestampx'] = pd.to_datetime(df['timestamp'], format='%m/%d/%Y %I:%M:%S %p')

print df

              timestamp          timestampx
0  6/13/2015 6:45:58 AM 2015-06-13 06:45:58
1  6/13/2015 7:00:37 PM 2015-06-13 19:00:37