如何用Pandas将整数格式日期转换为d-m-yyyy格式
如何用Pandas将整数格式日期转换为d-m-yyyy格式
首先,你的原始数据如下:
data = { 'date': {0: 20210101, 1: 20210102, 2: 20210103, 3: 20210104, 4: 20210105}, 'users_with_pdp': {0: 1, 1: 2, 2: 3, 3: 4, 4: 5} }
实现步骤
你可以通过以下简洁的代码完成日期格式转换:
- 将字典转为Pandas DataFrame
- 用
pd.to_datetime解析整数格式的日期(指定原始格式为%Y%m%d) - 用
dt.strftime将日期格式化输出为d-m-yyyy
完整代码示例
import pandas as pd # 加载数据为DataFrame df = pd.DataFrame(data) # 转换日期格式 df['date'] = pd.to_datetime(df['date'], format='%Y%m%d').dt.strftime('%d-%m-%Y') # 查看结果 print(df)
运行后输出结果:
date users_with_pdp 0 01-01-2021 1 1 02-01-2021 2 2 03-01-2021 3 3 04-01-2021 4 4 05-01-2021 5
可选:无前置零的d-m-yyyy格式
如果需要去掉日期和月份的前置零(比如输出1-1-2021而非01-01-2021),可以用以下方式实现:
# 手动拼接实现无前置零格式 df['date'] = pd.to_datetime(df['date'], format='%Y%m%d').apply(lambda x: f"{x.day}-{x.month}-{x.year}")
输出结果:
date users_with_pdp 0 1-1-2021 1 1 2-1-2021 2 2 3-1-2021 3 3 4-1-2021 4 4 5-1-2021 5
内容的提问来源于stack exchange,提问作者user20944254
相关产品推荐
相关产品推荐

