2016-08-01 76 views
2

我想將日期從sas,14487轉換爲1999-08-31。從timestemp下降小時,分鐘,秒?

如何將當前結果'1999-08-31 00:00:00'轉換爲'1999-08-31'? 我試過ser.normalize()。但它沒有幫助。

ser = pd.to_timedelta(14487, unit='D') + pd.Timestamp('1960-1-1') 
ser.normalize() 

收率

Timestamp('1999-08-31 00:00:00') 

回答

3

normalize(根據the docs)剛復位時間到午夜。

您可以使用strftime(請參閱文檔here)。此外,here是您可以使用的格式說明符列表。

ser = pd.to_timedelta(14487, unit='D') + pd.Timestamp('1960-1-1') 
ser.strftime('%Y-%m-%d') 

輸出

'1999-08-31' 
+0

感謝。任何想法爲什麼.normalize()不起作用? – Lisa

+0

謝謝。@ Alex任何想法。爲什麼.normalize()不起作用? – Lisa

+0

@ user7153歡迎!更新後回答這個問題。 – Alex

3

如果你想在一個datetime.date格式:

(pd.to_timedelta(14487, unit='D') + pd.Timestamp('1960-1-1')).date() 
#Out: 
#datetime.date(1999, 8, 31) 
相關問題