You need to enable JavaScript to run this app. Python中将日期列的dayofweek整数转换为星期字符串的方法求助
优惠活动
大模型
产品
解决方案
定价
更多

Python中将日期列的dayofweek整数转换为星期字符串的方法求助

解决方案

你用date.weekday()不生效的原因是该方法仅支持单个datetime对象调用,无法直接作用于pandas日期列(Series类型),整列转换可以直接用map映射或者pandas内置方法实现:

方法1:手动映射(可控性高,无需修改系统配置)

你之前已经定义了映射字典,修改为中文映射后直接调用map方法即可整列转换:

# 定义0-6到中文星期的映射关系
days = {0:'星期一', 1:'星期二', 2:'星期三', 3:'星期四', 4:'星期五', 5:'星期六', 6:'星期日'}
# 整列转换,将生成的星期字符串直接作为新列加入原数据集(df为你的原DataFrame变量名)
df['weekday_cn'] = dte.dt.dayofweek.map(days)

方法2:内置方法直接生成(无需手动写映射)

通过修改系统时间区域配置,直接调用内置的day_name()方法获取中文星期:

import locale
# 根据操作系统选择对应配置命令,二选一即可
# Windows系统使用:
locale.setlocale(locale.LC_TIME, 'zh_CN.UTF-8')
# Mac/Linux系统使用:
# locale.setlocale(locale.LC_TIME, 'zh_CN')

# 直接整列生成中文星期名称
df['weekday_cn'] = dte.dt.day_name()

两种方法都可以直接对全量504行数据生效,不需要逐行处理单个日期。

内容的提问来源于stack exchange,提问作者Baby Yoda

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.14 19:45:03