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

如何对Pandas DataFrame列执行自运算赋值?解决日期解析报错

解决Pandas日期运算的TypeError问题

错误原因

dateutil.parser.parse仅支持处理单个字符串,无法直接接收Pandas Series作为输入,这就是触发TypeError: Parser must be a string or character stream, not Series的核心原因。

正确实现代码

使用Pandas内置的pd.to_datetime方法批量转换日期列,它原生支持处理Series类型,后续可直接完成时间运算与格式化:

import pandas as pd
from datetime import timedelta

# 链式调用完成日期转换、时间运算、格式输出
boxes_df["delivery_date"] = (pd.to_datetime(boxes_df["delivery_date"]) 
                             + timedelta(weeks=weeks_before)
                            ).dt.strftime("%Y-%m-%d")

补充说明

  • 若原delivery_date列存在无效日期格式,可添加errors参数兼容处理:
    pd.to_datetime(boxes_df["delivery_date"], errors='coerce')  # 将无效值转为NaT
    
  • 如果不需要将日期转为字符串格式,仅保留datetime类型用于后续运算,可去掉最后的.dt.strftime("%Y-%m-%d")步骤。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 10:36:27