You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何从日期获取星期几?解决Series不可哈希错误

问题解决:批量映射星期数到星期名称报错的处理

错误原因

你直接用Pandas Series作为字典索引会报错unhashable type: 'Series',因为字典仅支持单个可哈希值作为键,无法直接接收Series类型的批量索引。

解决方案

方法1:使用map()方法批量映射

注意:Pandas的dt.dayofweek返回值范围是0(周一)到6(周日),你的字典键值对应关系和这个不匹配,需要先调整字典,再用map()方法完成批量映射:

# 调整字典,键对应dt.dayofweek的返回值
day_of_week = {
    0: "monday",
    1: "tuesday",
    2: "wednesday",
    3: "thursday",
    4: "friday",
    5: "saturday",
    6: "sunday"
}

# 使用map完成批量映射
september_2022["day_of_week"] = september_2022["started_at"].dt.dayofweek.map(day_of_week)

方法2:直接用Pandas内置方法获取星期名称(更简便)

无需手动维护字典,用dt.day_name()直接生成星期名称,再转小写即可:

september_2022["day_of_week"] = september_2022["started_at"].dt.day_name().str.lower()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 20:40:29