Python Pandas数据中对时间的操作

yipeiwu_com6年前Python基础

Pandas中对 时间 这个属性的处理有非常非常多的操作。

而本文对其中一个大家可能比较陌生的方法进行讲解。其他的我会陆续上传。

应用情景是这样的:考虑到有一个数据集,数据集中有用户注册账号的时间(年-月-日),如下图格式。


如果我们希望对用户账号注册时间转为具体的天数,我们可以用如下代码。

import pandas as pd
td=data['user_reg_tm']
Time=pd.to_datetime(td)
Start=pd.datetime(2016,4,16)
day=Start-Time

最后,把天数插入到原来的表中

data['Day']=day


下面简单的说一下一个时间的创建一些细节。

date=pd.Series(['2016411'])
pd.to_datetime(date)

这样就创建一个时间为 2016-4-11的时间值。

这里有个细节,就是字符串里的时间格式,年月日之间如果没有分隔,pandas会自动用-号分开,如果要自己手动分隔,例如

date=pd.Series(['2016-4-11'])

这也可以,或者用/号。但是注意,只能用- 或者/来进行分隔,不可使用别的。

有时候我们还需要有时分秒的信息。

date=pd.Series(['2016-4-11 12:12:12'])

最后再说下一个问题,上面我获得的天数后我们怎么单独取出“天数”来呢?

很简单,用.days来访问。

对于 Series类型,用 data.dt.days

对于 Timedelta类型,可以直接访问  即 data.days。

例如:

因为data['Day']是Series类型的

data['Day'].dt.days

因为day是Timedelta类型的

day.days

更新:时间处理下篇链接点击打开链接

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决Djang2.0.1中的reverse导入失败的问题

在Django中,版本是1.10.*以前的,导入reverse方法是这样的: from django.core.urlresolvers import reverse 前几天我刚刚...

Python MySQLdb模块连接操作mysql数据库实例

mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法。python操作数据库需要安装一个第三方的模块,在http:...

Python3.4学习笔记之常用操作符,条件分支和循环用法示例

本文实例讲述了Python3.4常用操作符,条件分支和循环用法。分享给大家供大家参考,具体如下: #Pyhon常用操作符 c = d = 10 d /= 8 #3.x真正的除法 pr...

使用python中的in ,not in来检查元素是不是在列表中的方法

使用python中的in ,not in来检查元素是不是在列表中的方法

如果在列表中返回True ,否则返回False 以上这篇使用python中的in ,not in来检查元素是不是在列表中的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希...

Python引用类型和值类型的区别与使用解析

Python数据类型分为值类型和引用类型, 下面我们看下它们的区别: 值类型: 对象本身不允许修改,数值的修改实际上是让变量指向了一个新的对象 包含:字符串、元组、数值,本身不允许被修改...