为了账号安全,请及时绑定邮箱和手机立即绑定

timedelta 对象浮动

timedelta 对象浮动

慕侠2389804 2022-06-02 11:10:38
您好,任何想法如何将 timedelta 对象转换为在 pandas 中浮动,它需要根据分钟或小时进行概括,即 00:06:46.221000 到 6.46 分钟或 01:06:76.341000 到 66.76 分钟
查看完整描述

2 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

如果您使用的是 Python2.7/3.2 或更高版本,则可以使用以下方法(其中 time_delta_obj 是您的 timedelta 对象):

time_minutes = time_delta_obj.total_seconds()/60.0

在 Python 3.2 或更高版本中,您可以简单地使用:

time_minutes = time_delta_obj/datetime.timedelta(minutes=1)

有关更多信息,请参阅Python 3.2 - datetime and timetimedelta.total_seconds()

要将其应用于 pandas 数据框,请使用 apply():

def convert_to_minutes(time_delta_obj):    return time_delta_obj.total_seconds()/60.0

或者

def convert_to_minutes(time_delta_obj):    return time_delta_obj/datetime.timedelta(minutes=1)

然后对于 df 的名为“time_diff”的列,使用以下命令:

df['time_diff'] = df['time_diff'].apply(convert_to_minutes)


查看完整回答
反对 回复 2022-06-02
?
holdtom

TA贡献1805条经验 获得超10个赞

你可以只Series用一个Timedelta(minutes=1). 的确:


>>> df

              col

0 00:06:46.221000

1 00:03:12.456000

2 00:02:07.123456

>>> df['col'] / pd.Timedelta(minutes=1)

0    6.770350

1    3.207600

2    2.118724

Name: col, dtype: float64


查看完整回答
反对 回复 2022-06-02
  • 2 回答
  • 0 关注
  • 124 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信