欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python数据分析库pandas高级接口dt的使用详解

程序员文章站 2022-03-02 12:26:25
series对象和dataframe的列数据提供了cat、dt、str三种属性接口(accessors),分别对应分类数据、日期时间数据和字符串数据,通过这几个接口可以快速实现特定的功能,非常快捷。今...

series对象和dataframe的列数据提供了cat、dt、str三种属性接口(accessors),分别对应分类数据、日期时间数据和字符串数据,通过这几个接口可以快速实现特定的功能,非常快捷。

今天翻阅pandas官方文档总结了以下几个常用的api。

1.dt.date 和 dt.normalize(),他们都返回一个日期的 日期部分,即只包含年月日。但不同的是date返回的series是object类型的,normalize()返回的series是datetime64类型的。

这里先简单创建一个dataframe。

Python数据分析库pandas高级接口dt的使用详解

2.dt.year、dt.month、dt.day、dt.hour、dt.minute、dt.second、dt.week (dt.weekofyear和dt.week一样)分别返回日期的年、月、日、小时、分、秒及一年中的第几周

Python数据分析库pandas高级接口dt的使用详解

3.dt.weekday(dt.dayofweek一样)返回一周中的星期几,0代表星期一,6代表星期天,dt.weekday_name返回星期几的英文。

Python数据分析库pandas高级接口dt的使用详解

4.dt.dayofyear 返回一年的第几天,dt.quarter得到每个日期分别是第几个季度。

Python数据分析库pandas高级接口dt的使用详解

5.dt.is_month_start和dt.is_month_end 判断日期是否是每月的第一天或最后一天,可以将month换成year和quarter相应的判断日期是否是每年或季度的第一天或最后一天.

Python数据分析库pandas高级接口dt的使用详解

6.dt.is_leap_year 判断是否是闰年

Python数据分析库pandas高级接口dt的使用详解

7.dt.month_name() 返回月份的英文名称.

Python数据分析库pandas高级接口dt的使用详解

补充知识:pandas字符串与时间序列的处理 str 与 dt

一、str属性

pandas里的series有一个str属性,通个这个属性可以调用一些对字符串处理的通用函数,

如:df['road'].str.contains('康庄大道') 会返回字符串里包含'康庄大道'的数据。

二、dt属性

pandas里对时间序列的处理,使用dt属性,如

df['datetime'].dt.time > time(10,0)

两个series的and比较 是使用 &运算符,如

(df['datetime'].dt.time > time(10,0) ) & (df['datetime'].dt.time < time(12,0)),

返回10点到12点之间的数据。

三、apply 函数示例

df['time'] = df['datetime'].apply(lambda x: x.time())

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。

相关标签: Python pandas dt