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

pandas根据年份列获取年末日期,原datetime.date写法报错原因求解

错误原因说明

datetime.date()是Python标准库提供的原生日期生成函数,仅支持接收单个整数作为年、月、日参数,无法批量处理序列数据。
你首次调用时传入的data['Year'].astype(int)是pandas的Series对象,对应DataFrame中一整列的年份集合,不属于单个整数类型,因此函数执行时无法将整列数据转换为符合要求的单值int参数,触发报错。

可选优化写法

你目前用的字符串拼接转日期的方案已经可以正常运行,如果希望提升大数量级下的处理效率,也可以使用pandas自带的向量化日期处理方法,明确指定日期格式减少解析开销:

# 生成pandas Timestamp类型日期
data['Date'] = pd.to_datetime(data['Year'].astype(str) + '-12-31', format='%Y-%m-%d')

# 若需要原生date类型,可追加dt.date转换
# data['Date'] = pd.to_datetime(data['Year'].astype(str) + '-12-31', format='%Y-%m-%d').dt.date

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 12:15:03