【问题标题】:Average datetime.time Series平均 datetime.time 系列
【发布时间】:2020-10-24 11:38:13
【问题描述】:

我试图找出以23:19:30HH:MM:SS 格式对一系列datetime.time 值进行平均的最佳方法,但是,当我尝试使用to_timedelta 方法和申请.mean()我遇到错误:

ValueError: Invalid type for timedelta scalar: <class 'datetime.time'>

使用to_timedelta().mean() 的正确格式是什么,或者有更好的方法吗?

代码:

bed_time_mean = pd.to_timedelta(bed_rise_df['start_time']).mean()

【问题讨论】:

    标签: pandas datetime time


    【解决方案1】:

    pd.to_timedelta 接受 H:M:S 格式的字符串作为输入,因此您可以先将包含 datetime.time 对象的列转换为字符串。例如:

    from datetime import time
    import pandas as pd
    
    df = pd.DataFrame({'t':[time(1,2,3), time(2,3,4), time(3,4,5)]})
    
    pd.to_timedelta(df['t'].astype(str)).mean()
    # Timedelta('0 days 02:03:04')
    

    【讨论】:

      猜你喜欢
      • 2019-05-02
      • 1970-01-01
      • 2010-12-19
      • 2023-03-27
      • 2015-07-18
      • 2021-02-18
      • 1970-01-01
      • 2017-03-10
      • 1970-01-01
      相关资源
      最近更新 更多