本文介绍了在 pandas 数据框中将 12 小时时间转换为 24 小时时间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

输入

    df=pd.DataFrame({
    'name':['abc','def','ghi'],
    'time':['10:30 PM', '11:30 PM', '01:20 AM']
})

输出

    name    time
0   abc     10:30 PM
1   def     11:30 PM
2   ghi     01:20 AM

我想喜欢下面这个将 12 小时转换为 24 小时的时间列:

I want to like below this which convert 12 hours to 24 hour in time column:

    name    time
0   abc     22:30
1   def     23:30
2   ghi     01:20

推荐答案

使用 pd.to_datetime 转换为 datetime dtype,并通过 dt 访问器转换回字符串:

use pd.to_datetime to convert to datetime dtype, and cast back to string via the dt accessor:

df['time'] = pd.to_datetime(df['time']).dt.time

# df['time']
# 0    22:30:00
# 1    23:30:00
# 2    01:20:00
# Name: time, dtype: object

...或添加 strftime 以获得特定的时间字符串格式:

...or add strftime to get a specific time string format:

df['time'] = pd.to_datetime(df['time']).dt.strftime('%H:%M')

# df['time']
# 0    22:30
# 1    23:30
# 2    01:20
# Name: time, dtype: object

这篇关于在 pandas 数据框中将 12 小时时间转换为 24 小时时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-06 21:29