1

在 Numpy 中,我试图获取datatime64.

我可以选择一个新数组,timedelta64其中包含每个元素从一天开始以来经过的时间。

我已经尝试过使用numpy.datetime_as_string,但我不知道如何操作字符串。

4

2 回答 2

5
def datetime64_to_time_of_day(datetime64_array):
    """
    Return a new array. For every element in datetime64_array return the time of day (since midnight).
    >>> datetime64_to_time_of_day(np.array(['2012-01-02T01:01:01.001Z'],dtype='datetime64[ms]'))
    array([3661001], dtype='timedelta64[ms]')
    >>> datetime64_to_time_of_day(np.datetime64('2012-01-02T01:01:01.001Z','[ms]'))
    numpy.timedelta64(3661001,'ms')
    """
    day = datetime64_array.astype('datetime64[D]').astype(datetime64_array.dtype)
    time_of_day = datetime64_array - day
    return time_of_day
于 2012-11-01T12:44:16.937 回答
0

如果使用 pandas,您可以调用pandas.Series.dt.time获取datetime.time对象。

于 2018-12-30T19:34:37.190 回答