22-Pandas日期时间格式化

Pandas日期时间格式化

当进行数据分析时,我们会遇到很多带有日期、时间格式的数据集,在处理这些数据集时,可能会遇到日期格式不统一的问题,此时就需要对日期时间做统一的格式化处理。比如“Wednesday, June 6, 2020”可以写成“6/6/20”,或者写成“06-06-2020。

日期格式化符号

在对时间进行格式化处理时,它们都有固定的表示格式,比如小时的格式化符号为%H ,分钟简写为%M ,秒简写为%S。下表对常用的日期格式化符号做了总结:

符号 说明
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地英文缩写星期名称
%A 本地英文完整星期名称
%b 本地缩写英文的月份名称
%B 本地完整英文的月份名称
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%U 一年中的星期数(00-53)星期天为星期的开始
%j 年内的一天(001-366)
%c 本地相应的日期表示和时间表示

Python处理

Python 内置的 strptime() 方法能够将字符串日期转换为 datetime 类型,下面看一组示例:

import pandas as pd
from  datetime import datetime
empdata = pd.read_csv("C:\\Users\\qwy\\Desktop\\data\\empdata.csv")

date_str =empdata.loc[:,'HIREDATE']
for d in date_str:
    print(f"转换前数据:
### Pandas 中的时间格式化方法 在 Pandas 中,时间格式化是一个常见的操作,主要用于将日期时间数据转换为特定的字符串格式或者从字符串解析为日期时间对象。以下是几种常用的方法: #### 使用 `to_datetime` 解析日期时间字符串 Pandas 提供了 `pd.to_datetime()` 函数用于将字符串或其他类型的日期时间数据转换为标准的 `datetime` 类型。该函数支持多种输入格式,并可以自动推断某些常见的时间格式[^2]。 ```python import pandas as pd date_strings = ['2023-10-01', '2023/10/02', 'Oct 3, 2023'] dates = pd.to_datetime(date_strings) print(dates) ``` 通过指定参数 `format` 可以手动定义输入字符串的日期时间格式。 --- #### 使用 `strftime` 格式化日期时间为字符串 如果需要将现有的日期时间对象转换为自定义格式的字符串,可以使用 `.dt.strftime(format)` 方法。此方法允许用户按照需求定义输出格式[^1]。 ```python df = pd.DataFrame({'date': pd.date_range(start='2023-10-01', periods=3)}) formatted_dates = df['date'].dt.strftime('%Y-%m-%d %H:%M:%S') print(formatted_dates) ``` 常用的占位符包括 `%Y` 表示四位年份、`%m` 表示两位月份、`%d` 表示两位日数等[^1]。 --- #### 处理时区与时差 对于涉及不同时区的数据,可以通过设置 `tz` 参数或将时区信息附加到日期时间对象上来完成处理[^2]。 ```python local_time = pd.Timestamp('2023-10-01 12:00:00').tz_localize('UTC').tz_convert('Asia/Shanghai') print(local_time) ``` 这一步骤通常用于跨区域分析或确保时间戳的一致性。 --- #### 提取日期时间组件 除了格式化外,还可以利用 `.dt` 属性提取日期时间中的具体部分,例如年、月、日、小时等。 ```python df['year'] = df['date'].dt.year df['month'] = df['date'].dt.month df['day_of_week'] = df['date'].dt.day_name() print(df[['date', 'year', 'month', 'day_of_week']]) ``` 这种方法适用于进一步分组统计或特征工程场景[^2]。 --- ### 总结 以上介绍了 Pandas 中关于时间格式化的几个核心方法,包括但不限于 `to_datetime` 的解析能力、`strftime` 的灵活定制以及针对复杂业务逻辑的支持工具。这些技术能够显著提升数据分析效率并减少错误率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值