当前位置: 首页 > 面试题库 >

日期时间列表的平均时间

许沛
2023-03-14
问题内容

寻找时间平均问题的最快解决方案。

我有一个日期时间对象列表。需要找到时间的平均值(不包括年,月,日)。这是到目前为止我得到的:

import datetime as dtm
def avg_time(times):
    avg = 0
    for elem in times:
        avg += elem.second + 60*elem.minute + 3600*elem.hour
    avg /= len(times)
    rez = str(avg/3600) + ' ' + str((avg%3600)/60) + ' ' + str(avg%60)
    return dtm.datetime.strptime(rez, "%H %M %S")

问题答案:

这是解决此问题的更好方法

生成日期时间样本

In [28]: i = date_range('20130101',periods=20000000,freq='s')

In [29]: i
Out[29]: 
<class 'pandas.tseries.index.DatetimeIndex'>
[2013-01-01 00:00:00, ..., 2013-08-20 11:33:19]
Length: 20000000, Freq: S, Timezone: None

平均20m次

In [30]: %timeit pd.to_timedelta(int((i.hour*3600+i.minute*60+i.second).mean()),unit='s')
1 loops, best of 3: 2.87 s per loop

结果为timedelta(请注意,这需要numpy 1.7和pandas 0.13 to_timedelta,很快就会出现)

In [31]: pd.to_timedelta(int((i.hour*3600+i.minute*60+i.second).mean()),unit='s')
Out[31]: 
0   11:59:12
dtype: timedelta64[ns]

以秒为单位(这适用于熊猫0.12,numpy> = 1.6)。

In [32]: int((i.hour*3600+i.minute*60+i.second).mean())
Out[32]: 43152


 类似资料:
  • 问题内容: 如何查询SQL Server的SQL Server 2005表列的创建日期? 我尝试获取该信息,但是创建日期未包含在此存储过程中。 如何才能做到这一点? 问题答案: 有一个名为sys.Columns的系统表,您可以从中获取列信息。如果要查看特定表的列,可以执行以下操作: 或者,您可以获取如下表信息: 但是我找不到有关列创建日期的任何信息。 更新: 这可能会有所帮助。

  • 本文向大家介绍pandas 日期时间系列,包括了pandas 日期时间系列的使用技巧和注意事项,需要的朋友参考一下 示例            

  • 问题内容: 我有一个脚本,需要在脚本的不同行执行以下命令: 在我的陈述中,我有以下内容: 我收到以下错误: 如果我将语句的顺序更改为: 我收到以下错误: 如果我再次将语句更改为: 我收到以下错误: 这是怎么回事,我怎么都可以工作? 问题答案: 您的麻烦是,您有一些代码希望对 模块 进行引用,而其他代码希望对类进行引用 。 显然,不能两者兼有。 当您这样做时: 您首先要设置为对该类的引用,然后立即将

  • 问题内容: 为了确定对能源使用的季节性影响,我需要将计费数据库中的能源使用信息与每月温度进行匹配。 我正在使用一个计费数据集,该数据集具有不同长度的账单以及开始日期和结束日期,我想获取每个月内每个帐户的月平均值。例如,我有一个具有以下特征的计费数据库: 我想弄清楚如何强制这些不规则的时间序列(对于每个帐户)以获取每个账单中每个月的每日平均金额,例如: 我完全不知道哪个工具可以执行此操作,因为我只需

  • 问题内容: 我有一组呼叫详细记录,从这些记录中,我可以确定每个系统每小时的平均并发活动呼叫(精确到一分钟)。如果查询从晚上7点到晚上8点,则应该看到该小时(对于每个系统)在该小时内的平均并发呼叫数(每分钟的并发呼叫数平均值)。 因此,我需要一种方法来检查7:00-7:01、7:01-7:02等的活动呼叫计数,然后对这些数字求平均值。如果呼叫的时间和持续时间在当前要检查的分钟内,则认为该呼叫处于活动

  • 介绍 日期时间包是Hutool的核心包之一,提供针对JDK中Date和Calendar对象的封装,封装对象如下: 日期时间工具 DateUtil 针对日期时间操作提供一系列静态方法 DateTime 提供类似于Joda-Time中日期时间对象的封装,继承自Date类,并提供更加丰富的对象方法。 FastDateFormat 提供线程安全的针对Date对象的格式化和日期字符串解析支持。此对象在实际使