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

如何将pd.to_datetime转换后的时间戳还原为%m%d%Y %H%M%S格式?

解决pandas日期转换后格式还原问题

我懂你的困扰——用pd.to_datetime转换后,原本%m%d%Y %H%M%S(月日年 时分秒)格式的日期变成了默认的%Y%m%d %H%M%S显示格式。其实核心原因是:pd.to_datetime生成的是datetime64类型的时间戳对象,它本身并不存储字符串格式,显示时会用pandas默认的日期格式。要还原回原格式,你需要把datetime对象再转回指定格式的字符串,具体步骤如下:

步骤1:正确解析原格式日期

首先确保你在转换时指定了原格式,避免pandas自动解析出错:

import pandas as pd

# 示例DataFrame
df = pd.DataFrame({'date_str': ['10052023 143025', '03122022 091500']})

# 解析原格式字符串为datetime对象,必须指定format参数
df['datetime'] = pd.to_datetime(df['date_str'], format='%m%d%Y %H%M%S')

步骤2:转回原格式字符串

用dt.strftime()方法将datetime对象格式化为你需要的字符串格式:

# 还原为原格式的字符串列
df['original_format'] = df['datetime'].dt.strftime('%m%d%Y %H%M%S')

执行后,original_format列就会和你最初的date_str列格式完全一致了:

date_strdatetimeoriginal_format
10052023 1430252023-10-05 14:30:2510052023 143025
03122022 0915002022-03-12 09:15:0003122022 091500

注意事项

  • 如果你的需求是进行时间计算,请保留datetime列(datetime类型);如果只是需要输出/展示原格式的日期字符串,直接使用original_format列即可。
  • 若要将结果保存到文件(如CSV),直接保存包含original_format列的DataFrame,就能保证输出格式符合要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:11:39