2015-10-23 153 views
1

我想將我的數據集中從列表的開始日期到日期的天數變換爲一列。使用熊貓變換日期列

這裏是我試圖在大熊貓達到一個例子:

enter image description here

#This doesn't not work 
sdate = datetime(2015, 10, 1) 
ndf['Date'] = ndf['Date'].apply(lambda x: sdate + x) 

回答

2

您將需要您的'Date'列轉換爲timedelta然後添加sdate它。

的做這件事的量化方式的例子 -

sdate = datetime(2015, 10, 1) 
ndf['Date'] = pd.to_timedelta(ndf['Date'],unit='d') + sdate 

這將使柱爲datetime型(不字符串)。


演示 -

In [18]: from datetime import datetime 

In [19]: sdate = datetime(2015, 10, 1) 

In [20]: df 
Out[20]: 
    Date 
0  1 
1  1 
2  3 
3  5 

In [21]: df['Date'] = pd.to_timedelta(df['Date'],unit='d') + sdate 

In [22]: df 
Out[22]: 
     Date 
0 2015-10-02 
1 2015-10-02 
2 2015-10-04 
3 2015-10-06