4

我在熊猫中有一堆“朱利安日期”类型的列。将它们转换为公历日期的最佳方法是什么。我的数据框看起来像 -

    CODE     START_DATE     END_DATE
0  00200         115001       115365
1  00200         115001       115365
2  00200         115001       115365
3  00200         115001       115365
4  00200         115001       115365

我想将 START_DATE 和 END_DATE 列转换为公历/常规日期时间。

在 sql 中,我会使用下面的 -

UPDATE Table1 set
DATE_NEW = CASE WHEN ltrim(rtrim(START_DATE)) = 0 THEN '1900-01-01' 
    WHEN ltrim(rtrim(START_DATE)) IS NULL THEN NULL    
    ELSE (CAST(DATEADD(dayofyear , ltrim(rtrim(START_DATE)) % 1000 - 1,DATEADD(year, ltrim(rtrim(START_DATE)) / 1000 , '1900-01-01')) as date)) END 

请建议。谢谢。

4

0 回答 0