如何将 numpy timedelta (np.timedelta64) 对象转换为整数

如果你有类似这样的 NumPy np.timedelta64 对象

timedelta_example_setup.py
import numpy as np
my_timedelta = np.timedelta64(625, 'us')

一个常见任务是将其转换为整数。

这通常就像这样简单

timedelta_to_int_example.py
my_timedelta.astype(int) # = 625,类型:np.int64

这将给你存储在 np.timedelta64 对象中的数字(始终是整数!),但它会忽略单位(例如我们示例中的 us 即微秒)。

要获取 timedelta 的单位,首先使用 pip install -U UliEngineering 安装 UliEngineering,然后你可以像这样使用它:

timedelta_resolution_example.py
import numpy as np
from UliEngineering.Utils.NumPy import *

my_timedelta = np.timedelta64(625, 'us')
print(timedelta64_resolution(my_timedelta)) # 打印 "us"

Check out similar posts by category: Python