【问题标题】:Converting string in '[hh]:mm:ss' format to datetime将 '[hh]:mm:ss' 格式的字符串转换为日期时间
【发布时间】:2020-01-23 13:22:49
【问题描述】:

我在 python 中管理一个数据框,其中有一列包含事件持续时间。原始数据框的类型是字符串,我想转换为DateTime。

问题在于字符串的格式是'[hh]:mm: ss',这意味着如果持续时间超过24小时,则不以天为单位,而是以小时为单位。示例:

>>> df
   duration Location
0  00:01:30        a
1  12:12:04        b
2  26:45:05        c
3  45:01:12        d

我正在尝试不同的格式,但不起作用:

df['Duration'] =pd.to_datetime(df['Duracion'], format='%[H]:%M:%S')

有什么帮助吗?

【问题讨论】:

  • 会发生什么?你有错误吗?或者您可以发布一个错误输出和所需输出的示例吗?
  • 获取:ValueError: '%' is a bad directive in format '%[H]:%M:%S'

标签: python datetime type-conversion


【解决方案1】:

试试pandas.to_timedelta:

df['Duration'] = pd.to_timedelta(df['Duration'])

【讨论】:

  • 没问题,很高兴能帮上忙。
猜你喜欢
  • 1970-01-01
  • 2014-08-10
  • 1970-01-01
  • 2022-09-29
  • 1970-01-01
  • 1970-01-01
  • 2023-03-19
  • 2016-10-08
相关资源
最近更新 更多