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

与numpy.timedelta64的时差,以秒为单位

夏晋
2023-03-14
问题内容

如何从numpy.timedelta64变量获取以秒为单位的时差?

time1 = '2012-10-05 04:45:18'
time2 = '2012-10-05 04:44:13'
dt = np.datetime64(time1) - np.datetime64(time2)
print dt

0:01:05

我想转换dt为代表时差的数字(整数或浮点数),以秒为单位。


问题答案:

您可以通过“包装的”日期时间项访问它:

>>> dt.item().total_seconds()
65.0

说明
:这里dt是一个阵列的标量中numpy,这是一个零等级阵列或0维阵列。因此,您会发现dt这里也具有ndarray拥有的所有方法,例如,您可以这样做dt.astype('float')。但是它包装了一个python对象,在这种情况下是一个datetime.timedelta对象。

要获得原始标量,可以使用dt.item()。要为数组标量建立索引,可以使用带有空元组的getitem有点奇怪的语法:

>>> dt[()]
array(datetime.timedelta(0, 65), dtype='timedelta64[s]')

这应该适用于所有版本的numpy,但如果您使用的是numpy v1.7 +,则最好直接使用更新的numpy datetime API,如JFSebastien的回答中所述。

numpy.timedelta64()使用numpy1.7实验性datetime API从对象获取秒数:

seconds = dt / np.timedelta64(1, 's')


 类似资料:
  • 问题内容: 我通过传递ipAddress来对方法进行调用,它会返回ipAddress的位置,例如国家/地区,城市等。因此,我试图查看每个调用花费的时间。因此,我在调用方法之前设置了start_time,在调用之后设置了end_time。 所以有时候我得到的差为0 。并且resp包含有效的响应。 因此,这意味着有时需要0毫秒才能恢复响应。任何建议将不胜感激。 问题答案: 试试这个

  • 问题内容: 有什么办法可以使它成为7.631000吗?我可以使用时间模块,但是我还需要将t1和t2变量用作DateTime对象。因此,如果有一种简便的方法可以用datettime进行操作,那就太好了。否则会看起来很丑: 问题答案:

  • 问题内容: 大家好, 在我的项目中,我需要计算 两个日期之间以秒为单位 的 时差 : 例如 : 然后我应该得到 86400秒, 即24小时。 类似地 它应该返回 60秒 。 我读了很多问题,其中 2分钟字段*之间的区别是 11:50:01和12:10:57 *** 问题答案: $timeFirst = strtotime(‘2011-05-12 18:20:20’); $timeSecond =

  • 问题内容: 我已经阅读了一些有关此的文章,并认为我有一些有效的代码。如果两个值之间的差小于1秒,则显示的毫秒是正确的。 如果差异超过一秒,它仍然只显示毫米的差异。 如下。 正确: 错误-应该是2000 + 76? 问题答案: 您的微秒不包括过去的秒数

  • 问题内容: 我试图在几秒钟之内得到两个日期之间的差异。逻辑将是这样的: 设置一个初始日期,即现在; 设置最终日期,该日期将是初始日期加上将来的秒数(例如,假设15) 得到这两者之间的差(秒数) 之所以使用日期来做,是因为最终日期/时间取决于其他一些变量,并且永远不一样(取决于用户执行操作的速度),并且我还存储其他日期的初始日期。 我一直在尝试这样的事情: 问题是我永远都不会得到正确的区别。我尝试过

  • 问题内容: 我有这个程序可以打印2个不同实例之间的时间差,但是它以秒为单位打印。我想以毫秒为单位打印它,以纳秒为单位打印另一个。 我该怎么做? 问题答案: 首先阅读time(7)手册页。 然后,您可以使用clock_gettime(2) syscall(您可能需要链接才能获取它)。 所以你可以尝试 即使硬件计时器具有纳秒级的分辨率,也不要期望它们具有纳秒级的精度。并且不要尝试测量持续时间少于几毫秒

  • 我想得到的是: 是否可以强制excel将“30378”视为秒数而不是天数?我知道我可以把'00:00:30378'写进一个牢房--这是唯一的办法吗?

  • 我有一个函数,受hms的启发,但我希望将其扩展到包括处理和显示天数。 我已经开始编辑脚本,但很快意识到我在处理逻辑方面超出了我的深度,几个小时跑到几天,反之亦然...... 以下是我到目前为止所拥有的: 秒:“那花了4天1小时1分1秒才运行。” < code>127932秒:“运行时间为1天11小时32分12秒。” < code>86400秒:“花了1天时间运行。” 秒:“这花了4天97小时1分1