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


Posted in Python onDecember 11, 2020

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 相关文章推荐
Python的加密模块md5、sha、crypt使用实例
Sep 28 Python
Python可变参数用法实例分析
Apr 02 Python
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
Jun 07 Python
python+Splinter实现12306抢票功能
Sep 25 Python
python 异或加密字符串的实例
Oct 14 Python
Python/ArcPy遍历指定目录中的MDB文件方法
Oct 27 Python
详细介绍Python进度条tqdm的使用
Jul 31 Python
使用pyqt 实现重复打开多个相同界面
Dec 13 Python
python如何求100以内的素数
May 27 Python
基于python实现删除指定文件类型
Jul 21 Python
Python图像识别+KNN求解数独的实现
Nov 13 Python
Python趣味挑战之教你用pygame画进度条
May 31 Python
python 自定义异常和主动抛出异常(raise)的操作
Dec 11 #Python
解决python 在for循环并且pop数组的时候会跳过某些元素的问题
Dec 11 #Python
基于Python中Remove函数的用法讨论
Dec 11 #Python
在 Python 中使用 7zip 备份文件的操作
Dec 11 #Python
Python文件名匹配与文件复制的实现
Dec 11 #Python
Python: glob匹配文件的操作
Dec 11 #Python
Python Socket多线程并发原理及实现
Dec 11 #Python
You might like
人族 Terran 魔法与科技
2020/03/14 星际争霸
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
thinkphp实现图片上传功能分享
2014/03/04 PHP
PHP针对多用户实现更换头像功能
2016/09/04 PHP
PHP实现正则匹配所有括号中的内容
2018/06/22 PHP
Laravel定时任务的每秒执行代码
2019/10/22 PHP
一个原生的用户等级的进度条
2010/07/03 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
javascript强大的日期函数代码分享
2013/09/04 Javascript
HTML页面滚动时获取离页面顶部的距离2种实现方法
2013/09/05 Javascript
JS实现从顶部下拉显示的带动画QQ客服特效代码
2015/10/24 Javascript
全面解析JavaScript中的valueOf与toString方法(推荐)
2016/06/14 Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
2016/12/14 Javascript
Bootstrap整体框架之CSS12栅格系统
2016/12/15 Javascript
Bootstrap3下拉菜单的实现
2017/02/22 Javascript
vue时间格式化实例代码
2017/06/13 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
2017/07/10 Javascript
Vue Spa切换页面时更改标题的实例代码
2017/07/15 Javascript
Vant picker 多级联动操作
2020/11/02 Javascript
[00:23]DOTA2群星共贺开放测试 25日无码时代来袭
2013/09/23 DOTA
[56:41]iG vs Winstrike 2018国际邀请赛小组赛BO2 第二场
2018/08/17 DOTA
CentOS 6.X系统下升级Python2.6到Python2.7 的方法
2016/10/12 Python
TensorFlow模型保存和提取的方法
2018/03/08 Python
基于scrapy的redis安装和配置方法
2018/06/13 Python
PyQt打开保存对话框的方法和使用详解
2019/02/27 Python
python3对接mysql数据库实例详解
2019/04/30 Python
python 字典 setdefault()和get()方法比较详解
2019/08/07 Python
解决TensorFlow模型恢复报错的问题
2020/02/06 Python
django为Form生成的label标签添加class方式
2020/05/20 Python
Python钉钉报警及Zabbix集成钉钉报警的示例代码
2020/08/17 Python
会计岗位描述
2014/02/22 职场文书
班风口号
2014/06/18 职场文书
北京英文导游词
2015/02/12 职场文书
三傻大闹宝莱坞观后感
2015/06/03 职场文书
MySQL系列之十三 MySQL的复制
2021/07/02 MySQL
python编程实现清理微信重复缓存文件
2021/11/01 Python