代码记录-python-excel显示为数值的日期格式转换

需求:将excel 读取到的数值转换为日期格式;

代码记录-python-excel显示为数值的日期格式转换_第1张图片

"""常用工具库引用"""

import numpy as np
import pandas as pd
import os
import time
import datetime
data_work = 'C:\\Users\\0\\Desktop\\data_work'
os.chdir(data_work)



"""用于天数TO日期的转换"""

def days_to_date(days):
    a = datetime.datetiem(1900,1,1)
    b = datetime.timedelta(days = days - 2)
    c = (a + b).strftime('%Y%m%d %H:%M:%S')
    return(c)

df['账单时间'].apply(days_to_date)

 excel 数值 1 转换为日期格式对应1900年1月1日,例如:44408 对应 2021年7月31日;

转思路为:利用datetime.timedelta(),对1900年1月1日增加对应天数差,转换成对应日期;

需要注意:对1900年1月1日增加天数差后,合计天数 = 44408 + 1,所以参数b中输入的数值应该-1,输出结果才是44408的对应日期;

但是excel中1900年2月显示有29天,而python中1900年2月只有28天,故b中参数需再减1天,python中计算的结果才能与excel数据对应(1900年3月及之后日期),以上为对代码中days-2的说明;

代码记录-python-excel显示为数值的日期格式转换_第2张图片

你可能感兴趣的:(python,数据分析)