Python 日期时间格式化 - 将字符串格式化为指定格式

标签 python pandas datetime

我希望将原始字符串转换为指定的数据时间格式。

这是示例数据:

0              47 mins
1       1 hour 25 mins
2       1 hour 27 mins
3               6 mins

上面是 python 中支持的日期时间格式之一,可以使用某些函数(to_datetime 或 strftime)进行转换吗?或者这需要以不同的方式处理/解析。

预期格式:

00:47
01:25
01:27
00:06

最佳答案

您有 2 种可能的格式,因此您可以分别尝试:

s = pd.Series(['47 mins', '1 hour 25 mins', '1 hour 27 mins', '6 mins'])

dt1 = pd.to_datetime(s, format='%H hour %M mins', errors='coerce')
dt2 = pd.to_datetime(s, format='%M mins', errors='coerce')

res = dt1.fillna(dt2).dt.strftime('%H:%M')

print(res)

0    00:47
1    01:25
2    01:27
3    00:06
dtype: object

关于Python 日期时间格式化 - 将字符串格式化为指定格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52666677/

相关文章:

sql - 计算日期范围内两次之间的分钟数

python - 每 100 个元素切片 Python 列表的最 pythonic 方法

python - 使用来自另一个 DataFrame 的组对一个 DataFrame 进行 T 检验

python - Django 邮箱

pandas - Seaborn:在热图上注释缺失值

python - Pandas 数据框可以有列表的数据类型吗?

python - Pandas:从 3 列创建时间戳:月、日、小时

r - 是否可以使用 HH :MM:SS format? 打印持续时间

python - 具有写时复制功能的纯功能数据结构?

python - 根据范围对随机数字列表进行分组