Python 使用numpy在列中填充日期

Python 使用numpy在列中填充日期,python,numpy,datetime,Python,Numpy,Datetime,我需要用日期填充一个数组,从2021-07-15期间开始,每月频率为120个期间。 目前我使用的代码是: dates= [] for i in range (0, len(output)): if (i%120 == 0): for e in[d.strftime("%Y-%m-%d") for d in pd.date_range(start='2021-7-1', periods=120, freq='MS').shift(14,fr

我需要用日期填充一个数组,从2021-07-15期间开始,每月频率为120个期间。 目前我使用的代码是:

dates= []
for i in range (0, len(output)):
   if (i%120 == 0):
      for e in[d.strftime("%Y-%m-%d") for d in pd.date_range(start='2021-7-1', periods=120, 
         freq='MS').shift(14,freq='D')]:
         dates.append(e)

这段代码工作没有问题,但我想使用numpy,因为它通常比pandas或list更快。有人知道如何使用numpy datetime64替换此代码吗?

arange
可以使用datetime64对象:

In [35]: stop=start+np.timedelta64(120)
In [36]: arr=np.arange(start,stop)
In [37]: arr.shape
Out[37]: (120,)
In [38]: arr[:10]
Out[38]: 
array(['2021-07-15', '2021-07-16', '2021-07-17', '2021-07-18',
       '2021-07-19', '2021-07-20', '2021-07-21', '2021-07-22',
       '2021-07-23', '2021-07-24'], dtype='datetime64[D]')
In [39]: arr[::10]
Out[39]: 
array(['2021-07-15', '2021-07-25', '2021-08-04', '2021-08-14',
       '2021-08-24', '2021-09-03', '2021-09-13', '2021-09-23',
       '2021-10-03', '2021-10-13', '2021-10-23', '2021-11-02'],
      dtype='datetime64[D]')