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

如何基于当前日期对DataFrame列进行日期运算计算到期剩余天数

问题排查&修复方案

你的代码存在3处导致运行失败的问题:

  • 你调用strftime将today转换成了字符串格式,datetime类型的DataFrame列无法直接和字符串做日期差值运算
  • 新增列的列名末尾缺少闭合的单引号,存在基础语法错误
  • 两个日期相减得到的是timedelta类型,需要提取天数属性才能得到整数格式的剩余天数

可正常运行的代码

from datetime import date
import pandas as pd

# 保留today的原生日期类型,不要转成字符串
today = date.today()
# 整列转datetime格式,直接调用pd.to_datetime比apply效率更高
df['Maturity Date'] = pd.to_datetime(df['Maturity Date'])
# 日期运算后通过dt.days提取天数字段,同时补全列名的闭合引号
df['Remaining Days til Maturity'] = (df['Maturity Date'] - pd.to_datetime(today)).dt.days

注:如果计算结果为负数,说明对应记录的到期日早于当前日期,已经到期

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 15:24:05