如何将数据集WEEK周数字段转换为对应MM/DD/YY格式日期
实现方法
你可以通过pandas的时间偏移功能快速完成转换,逻辑是基于给定的WEEK 1基准日期,按周数偏移对应天数后格式化即可,代码如下:
import pandas as pd # 定义WEEK 1对应的基准起始日期 base_date = pd.to_datetime("1989-09-14") # 计算对应周的起始日期并格式化为MM/DD/YY格式 data["Date"] = (base_date + pd.to_timedelta((data["WEEK"] - 1) * 7, unit="d")).dt.strftime("%m/%d/%y")
逻辑说明
- WEEK 1对应偏移0天,每往后一周偏移7天,所以用
(WEEK - 1) * 7计算偏移天数 pd.to_timedelta将数值转为可运算的时间差对象,和基准日期相加得到对应周的起始日期,会自动处理闰年、月份天数差异等问题strftime("%m/%d/%y")直接输出你需要的两位月/两位日/两位年的字符串格式,和你给出的预期输出完全匹配
内容的提问来源于stack exchange,提问作者HeinrichCode
相关产品推荐
相关产品推荐

