代码之家  ›  专栏  ›  技术社区  ›  George

从numpy数组浮动创建datetime对象

  •  0
  • George  · 技术社区  · 5 年前

    我有一个numpy数组,它包含4天中的小时数:

    s = np.array([0.0, 1.0, 2.0, 3.0, 4.0 ....96.0])
    

    因此:

    start_date = datetime.datetime.strptime('2021-03-21 00:00', '%Y-%m-%d %H:%M')
    

    如何创建一个包含datetimes的新数组,从 s 数组。

    0 回复  |  直到 5 年前
        1
  •  1
  •   yvesonline    5 年前

    使用 timedelta 要构建新阵列,请执行以下操作:

    >>> import numpy as np
    >>> from datetime import datetime, timedelta
    >>> s = np.array([0.0, 1.0, 2.0, 3.0, 4.0, 96.0])
    >>> start_date = datetime.strptime('2021-03-21 00:00', '%Y-%m-%d %H:%M')
    >>> [start_date + timedelta(hours=diff) for diff in s]
    [datetime.datetime(2021, 3, 21, 0, 0), datetime.datetime(2021, 3, 21, 1, 0), datetime.datetime(2021, 3, 21, 2, 0), datetime.datetime(2021, 3, 21, 3, 0), datetime.datetime(2021, 3, 21, 4, 0), datetime.datetime(2021, 3, 25, 0, 0)]