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设计】。

相关文章

python3实现windows下同名进程监控

python3实现windows下同名进程监控,供大家参考,具体内容如下 公司老版的SVN服务器的svn服务经常意外关闭,需要写个简单的监控脚本监控一下; 首先多个SVN服务使用不同的端...

PyQt5创建一个新窗口的实例

PyQt5创建一个新窗口的实例

1.使用Qt Design设计一个空白窗口(注意:我是使用MainWindow创建的窗口) 2.使用PyUIC将.ui文件转换成.py文件 右键.ui文件->External T...

Python中的延迟绑定原理详解

直接看下面例子 my_ld = [lambda x:x*i for i in range(3)] my_list = [ld(2) for ld in my_ld] print(my...

sublime python3 输入换行不结束的方法

sublime python3 输入换行不结束的方法

sublime编辑模式下,编译py文件,enter键后并没有打印,发现是sublime编译方式的问题,需要安装插件sublimeREPL。 #!/usr/bin/python3 s...

TensorFlow实现Batch Normalization

TensorFlow实现Batch Normalization

一、BN(Batch Normalization)算法 1. 对数据进行归一化处理的重要性 神经网络学习过程的本质就是学习数据分布,在训练数据与测试数据分布不同情况下,模型的泛化能力就大...