将数字SAS日期转换为日期时间Pandas

时间:2018-01-29 21:12:47

标签: python pandas datetime

我目前正在尝试重现这一点:convert numeric sas date to datetime in Pandas ,但得到以下错误:

“Python int太大而无法转换为C long”

这里和我约会的例子:

    0    1.416096e+09
    1    1.427069e+09
    2    1.433635e+09
    3    1.428624e+09
    4    1.433117e+09
Name: dates, dtype: float64

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

这是一个有点hacky的解决方案。如果日期列被称为' date',请尝试

df['date'] = pd.to_datetime(df['date'] - 315619200, unit = 's')

此处315619200是1960年1月1日至1970年1月1日之间的秒数。

你得到了

0   2004-11-15 00:00:00
1   2005-03-22 00:03:20
2   2005-06-05 23:56:40
3   2005-04-09 00:00:00
4   2005-05-31 00:03:20