【问题标题】:In dataframe: how to pull minutes and seconds combinedly(mm:ss) from timedelta using python在数据框中:如何使用 python 从 timedelta 中同时提取分钟和秒(mm:ss)
【发布时间】:2021-06-22 10:19:24
【问题描述】:

我已经尝试过这些,但是通过这个我们只能得到小时/分钟/秒,但不能同时得到分钟和秒

在[7]中: df['B'] = df['A'].dt.components['hours']

df

输出[7]:

     A  B

0 02:00:00 2

1 01:00:00 1


从此时间增量格式

0 0 天 00:02:02.246000

1 0 天 00:01:59.127000

我只需要分秒,如何获取如下

02:02

01:59

【问题讨论】:

标签: python timedelta


【解决方案1】:

您可以将 timedelta 转换为总秒数,并使用 divmod 函数从总秒数中提取分钟和秒数。

编辑:从第一个操作中删除了 lambda 函数。

    df['sec'] = df['A'].dt.total_seconds().astype(int)
    df['B'] = df.apply(lambda row: str(divmod(divmod(row['sec'], 3600)[1], 60)[0]).zfill(2)+':'+str(divmod(divmod(row['sec'], 3600)[1], 60)[1]).zfill(2), axis=1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-05
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多