首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在numba中有没有一种方法可以用numpy datetime64变量来确定日期和小时?

在numba中,可以使用@vectorize装饰器来创建一个自定义的函数,以处理numpy datetime64变量并确定日期和小时。下面是一个示例代码:

代码语言:txt
复制
import numpy as np
from numba import vectorize

@vectorize(['int64(datetime64[D])'])
def get_date(dt):
    return np.datetime64(dt, 'D').astype('datetime64[s]').astype('int64')

@vectorize(['int64(datetime64[h])'])
def get_hour(dt):
    return np.datetime64(dt, 'h').astype('datetime64[s]').astype('int64') % (24 * 3600) // 3600

# 示例用法
dates = np.array(['2022-01-01', '2022-01-02'], dtype='datetime64[D]')
hours = np.array(['2022-01-01T00', '2022-01-01T01'], dtype='datetime64[h]')

date_values = get_date(dates)
hour_values = get_hour(hours)

print(date_values)  # 输出: [18930 18931]
print(hour_values)  # 输出: [0 1]

在上述示例中,我们定义了两个自定义函数get_dateget_hour,分别用于确定日期和小时。这些函数使用@vectorize装饰器,使其能够处理numpy数组中的元素,并返回相应的日期或小时值。

对于日期,我们首先将输入的datetime64变量转换为天级别的精度,然后将其转换为秒级别的精度,并最终转换为int64类型的整数值。

对于小时,我们首先将输入的datetime64变量转换为小时级别的精度,然后将其转换为秒级别的精度,并使用取模和整除运算获取小时值。

请注意,这只是一个示例代码,用于演示如何在numba中处理numpy datetime64变量并确定日期和小时。具体的应用场景和优势取决于具体的业务需求。如果您需要更多关于numba的信息,可以参考腾讯云的Numba产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券