2016-04-23 67 views
-1

我有一個包含單個日期時間對象的1X1熊貓系列對象。我想複製這行到額外的X行(例如10)。我已經嘗試通過.append命令以及普通的乘法來完成它,但是當對象類型是'datetime'時它似乎不起作用。幫助讚賞。如何複製熊貓日期時間對象

>>> print df 
0 2016-04-21 
dtype: datetime64[ns] 

期望的輸出應該是這樣的(我通過相當麻煩df.append([DF,DF,DF ...])生成的

0 2016-04-21 
0 2016-04-21 
0 2016-04-21 
0 2016-04-21 
0 2016-04-21 
0 2016-04-21 
dtype: datetime64[ns] 

回答

1

可以使用numpy.tile()函數,該函數:

In [43]: s = pd.Series(pd.to_datetime('2016-04-21')) 

In [44]: s 
Out[44]: 
0 2016-04-21 
dtype: datetime64[ns] 

In [45]: np.tile(s, 10) 
Out[45]: 
array(['2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200', 
     '2016-04-21T02:00:00.000000000+0200'], dtype='datetime64[ns]') 

In [46]: pd.DataFrame(np.tile(s, 10), columns=['date']) 
Out[46]: 
     date 
0 2016-04-21 
1 2016-04-21 
2 2016-04-21 
3 2016-04-21 
4 2016-04-21 
5 2016-04-21 
6 2016-04-21 
7 2016-04-21 
8 2016-04-21 
9 2016-04-21