【问题标题】:How to convert X min, Y sec string to timestamp如何将 X min, Y sec 字符串转换为时间戳
【发布时间】:2021-06-26 01:55:27
【问题描述】:

我有一个带有duration 字符串列的数据框,格式如下:

index duration
0 26 s
1 24 s
2 4 min, 37 s
3 7 s
4 1 min, 1 s

是否有 pandas 或 strftime() / strptime() 方法可以将 duration 列转换为分钟/秒时间戳。

我尝试过这种方式来转换字符串,但是替换字符串后会遇到多种情况:

for row in df['index']:
    if "min, " in df['duration'][row]:
        df['duration'][row] = df['duration'][row].replace(' min, ', ':').replace(' s', '')
    else:
        pass

提前致谢

【问题讨论】:

    标签: python pandas timestamp timedelta


    【解决方案1】:

    试试:

    pd.to_timedelta(df['duration'])
    

    输出:

    0   0 days 00:00:26
    1   0 days 00:00:24
    2   0 days 00:04:37
    3   0 days 00:00:07
    4   0 days 00:01:01
    Name: duration, dtype: timedelta64[ns]
    

    【讨论】:

    • 好吧,我确实过于复杂了。谢谢斯科特!
    猜你喜欢
    • 2015-07-28
    • 2021-12-09
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 2022-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多