Python pandas中%Y%U格式yearweek转换为日期报错如何解决
错误原因
- 你使用的格式字符串包含
-分隔符,但原始yearweek字段没有对应分隔符,二者结构不匹配导致解析失败 %W是周一开始的周计数规则,你需要使用%U匹配你提到的周从周日开始的计数规则
正确实现代码
import pandas as pd # 示例数据 data = {'yearweek': ['202140', '202139', '202138', '202137'], 'value': [452, 741, 475, 1000]} df = pd.DataFrame(data) # 转换逻辑:拼接0代表周日,用%Y%U%w解析后格式化为目标格式 df['date'] = pd.to_datetime(df['yearweek'] + '0', format='%Y%U%w').dt.strftime('%d-%m-%Y')
输出结果
| yearweek | value | date |
|---|---|---|
| 202140 | 452 | 04-10-2021 |
| 202139 | 741 | 27-09-2021 |
| 202138 | 475 | 20-09-2021 |
| 202137 | 1000 | 13-09-2021 |
内容的提问来源于stack exchange,提问作者Bushmaster
相关产品推荐
相关产品推荐

