Creating numpy linspace out of datetime

Update – 2022

As pointed out by @Joooeey and @Ehtesh Choudhury, pandas now has date_range, which makes creating numpy.linspace-like time series much simpler.

t = pd.date_range(start="2022-03-10",
                  end='2022-03-15',
                  periods=5)

If it’s important to have this time series as a numpy array, simply

>>> t.values

array(['2022-03-10T00:00:00.000000000', '2022-03-11T06:00:00.000000000',
       '2022-03-12T12:00:00.000000000', '2022-03-13T18:00:00.000000000',
       '2022-03-15T00:00:00.000000000'], dtype="datetime64[ns]")

Original answer

Have you considered using pandas? Using an approach from this possible duplicate question, you can make use of np.linspace in the following way

import pandas as pd

start = pd.Timestamp('2015-07-01')
end = pd.Timestamp('2015-08-01')
t = np.linspace(start.value, end.value, 100)
t = pd.to_datetime(t)

To obtain an np.array of the linear timeseries

In [3]: np.asarray(t)
Out[3]: 
array(['2015-06-30T17:00:00.000000000-0700',
       '2015-07-01T00:30:54.545454592-0700',
       '2015-07-01T08:01:49.090909184-0700',
               ...
       '2015-07-31T01:58:10.909090816-0700',
       '2015-07-31T09:29:05.454545408-0700',
       '2015-07-31T17:00:00.000000000-0700'], dtype="datetime64[ns]")

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)