1

我想对几个特征进行回归,其中之一是时间。因此,我需要将时间转换为定量变量,例如整数。

特别是,我想从一个datetime.time对象中获取一个序数。有直接的方法吗?

我知道这可以通过对象的方法来完成toordinal()datetime.date但是相同的方法不存在datetime.time

4

1 回答 1

2

在datetime 模块中似乎没有任何内置方法。这种格式实际上并不适用于序数值,因为它不包括日期,并且与具有不同日期的事件进行比较可能会给出错误的顺序。如果这是您自己返回的代码,datetime.time我建议您只使用时间模块time.time()中的时间戳。如果您需要使其易于阅读,则始终可以将时间戳转换为格式化时间。

即使datetime.time没有内置的时间戳转换器,您也可以自己轻松完成,只需将每个时间值转换为秒并将它们相加:

def dtt2timestamp(dtt):
    ts = (dtt.hour * 60 + dtt.minute) * 60 + dtt.second
    #if you want microseconds as well
    ts += dtt.microsecond * 10**(-6)
    return ts
于 2013-07-11T09:23:51.993 回答