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

如何在Python(Pandas)中将日期格式转换为整数?

解决日期转Excel风格数值的问题

要把你的日期字符串转换成预期的数值类型(Excel日期序列号),可以分两步操作:先将字符串解析为datetime类型,再计算与Excel基准日期的天数差。

完整代码实现

import pandas as pd

new_df = { 'date': [ '20/08/2008', '21/08/2008','22/08/2008'  ], 'valor': ['a','b','c'] }
df = pd.DataFrame(new_df)

# 1. 将日期字符串解析为datetime类型,指定格式为日/月/年
df['date'] = pd.to_datetime(df['date'], format='%d/%m/%Y')

# 2. 转换为Excel风格的日期序列号(以1899-12-30为基准日计算天数)
df['date'] = (df['date'] - pd.Timestamp('1899-12-30')).dt.days

print(df)

代码说明

  • 解析日期:使用pd.to_datetime并指定format='%d/%m/%Y',确保日/月/年格式的字符串被正确识别,避免自动解析时出现格式混淆。
  • 计算日期序列号:Excel的日期系统以1900-01-01为数值1的起点,对应Python中1899-12-30与目标日期的天数差。通过计算这个差值,就能得到你需要的39680这类数值。

执行上述代码后,输出将与你预期的一致:

date valor
0  39680     a
1  39681     b
2  39682     c

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 20:24:23