excel时间戳转化为标准日期(日期转化为日期戳)
最近在学习 python 将数据导入到 excel ,发现日期变成数字而不是日期格式的问题。 第一眼看去肯定是 excel 单元格格式问题,一般 excel 单元格格式为常规,而常规处理日期时就显示为数字,所以就想到用一个特定的数字(知道具体日期的),增加一天对应的数字就加 1 。 先看看 python 直接导入后日期的样子(下面时我随机举例的): 我们需要日期数据替换成标准的日期格式,具体的思路是: 1 、先用 excel 实验 2019-5-02 对应的日期时间戳是 43587 。 2 、再用 2019-5-02 减 43587 看是从什么时候开始计算,结论是 1899-12-30 。 import pandas as pd pd.to_datetime( ' 2019-05-02 ' )-pd.Timedelta( ' 43587D ' ) # D表示天 # Timestamp('1899-12-30 00:00:00') 3 、那么最后时间戳转化为日期:就只需要当前时间戳 +1899-12-30 批量转化 ( 定义转化日期戳的函数 ,dates 为日期戳 ) 方法一:用 pd 中得 Timedelta 和 to_datetime import pandas as pd def date(stamp): # 这个有个弊端,输入得时间戳过大后报错,最大支持多少106751