时间差(Timedelta)是时间上的差异,以不同的单位来表示。例如:日,小时,分钟,秒。它们可以是正值,也可以是负值。
可以使用各种参数创建Timedelta对象,如下所示 -

字符串

通过传递字符串,可以创建一个timedelta对象。参考以下示例代码 -

import pandas as pdtimediff = pd.Timedelta('2 days 2 hours 15 minutes 30 seconds') print(timediff) 
Python

执行上面救命代码,得到以下结果 -

2 days 02:15:30
Shell

整数

通过传递一个整数值与指定单位,这样的一个参数也可以用来创建Timedelta对象。

import pandas as pdtimediff = pd.Timedelta(6,unit='h') print(timediff) 
Python

执行上面救命代码,得到以下结果 -

0 days 06:00:00
Shell

数据偏移

例如 - 周,天,小时,分钟,秒,毫秒,微秒,纳秒的数据偏移也可用于构建。

import pandas as pdtimediff = pd.Timedelta(days=2) print(timediff) 
Python

执行上面救命代码,得到以下结果 -

2 days 00:00:00
Shell

运算操作

可以在Series/DataFrames上执行运算操作,并通过在datetime64 [ns]系列或在时间戳上减法操作来构造timedelta64 [ns]系列。参考以下示例代码 -

import pandas as pds = pd.Series(pd.date_range('2012-1-1', periods=3, freq='D')) td = pd.Series([ pd.Timedelta(days=i) for i in range(3) ]) df = pd.DataFrame(dict(A = s, B = td)) print(df) 
Python

执行上面示例代码,得到以下结果 -

           A      B
0 2012-01-01 0 days
1 2012-01-02 1 days
2 2012-01-03 2 days
Shell

相加操作

import pandas as pds = pd.Series(pd.date_range('2018-1-1', periods=3, freq='D')) td = pd.Series([ pd.Timedelta(days=i) for i in range(3) ]) df = pd.DataFrame(dict(A = s, B = td)) df['C']=df['A']+df['B'] print(df) 
Python

执行上面示例代码,得到以下结果 -

           A      B          C
0 2018-01-01 0 days 2018-01-01
1 2018-01-02 1 days 2018-01-03
2 2018-01-03 2 days 2018-01-05
Shell

相减操作

import pandas as pds = pd.Series(pd.date_range('2012-1-1', periods=3, freq='D')) td = pd.Series([ pd.Timedelta(days=i) for i in range(3) ]) df = pd.DataFrame(dict(A = s, B = td)) df['C']=df['A']+df['B'] df['D']=df['C']-df['B'] print(df) 
Python

执行上面示例代码,得到以下结果 -

           A      B          C          D
0 2018-01-01 0 days 2018-01-01 2018-01-01
1 2018-01-02 1 days 2018-01-03 2018-01-02
2 2018-01-03 2 days 2018-01-05 2018-01-03

转载于:https://www.cnblogs.com/navysummer/p/9641199.html

Pandas时间差(Timedelta)相关推荐

  1. Pandas 时间差(Timedelta)

    时间差(Timedelta)是时间上的差异,以不同的单位来表示.例如:日,小时,分钟,秒.它们可以是正值,也可以是负值. 可以使用各种参数创建Timedelta对象,如下所示 - 字符串 通过传递字符 ...

  2. Padans Timedelta时间差

    Padans Timedelta时间差 Timedelta 表示时间差(或者时间增量),我们可以使用不同的时间单位来表示它,比如,天.小时.分.秒.时间差的最终的结果可以是正时间差,也可以是负时间差. ...

  3. Pandas 时间序列 - DateOffset 对象

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 国亡身殒今何有,只留离骚在世间. ...

  4. 数据导入与预处理-拓展-pandas时间数据处理01

    数据导入与预处理-拓展-pandas时间数据处理01 Pandas时序数据系列博客 Pandas时间序列数据处理 1.好用的Python库 2.Pandas历史 3.时序数据处理 3.1 时序中的基本 ...

  5. datawhale pandas 打卡10 时序数据

    内容简介 这次文章的内容是pandas的文本数据 文章目录 内容简介 时序中的基本对象 时间戳 时间戳的创建 时间戳的上下限 Datetime序列的生成 dt对象 时间戳的切片与索引 时间差 Time ...

  6. pandas组队学习 task10-时间序列

    [pandas组队学习 task-10](http://inter.joyfulpandas.datawhale.club/Content/ch10 import pandas as pd impor ...

  7. 3 python pandas

    一.什么是pandas? Pandas 是一个开源的第三方 Python 库,从 Numpy 和 Matplotlib 的基础上构建而来,享有数据分析"三剑客之一"的盛名(NumP ...

  8. 【转】《Pandas Cookbook》第10章 时间序列分析

    In[1]: import pandas as pdimport numpy as np %matplotlib inline 1. Python和Pandas日期工具的区别 # 引入datetime ...

  9. Pandas教程目录

    Pandas数据结构 Pandas系列 Pandas数据帧(DataFrame) Pandas面板(Panel) Pandas基本功能 Pandas描述性统计 Pandas函数应用 Pandas重建索 ...

最新文章

  1. php使用webuploader表单上传文件覆盖文件key doesn't match with scope的问题和解决思路
  2. mvn命令安装jar包--转
  3. 4、路由器和主机如何配置IP地址等信息才能使计算机相互通信
  4. android纹理缓存,Android OpenGLES(七) 理解纹理与纹理过滤
  5. 02: MySQL的安装与基本配置
  6. Mysql俩种表级锁
  7. WinCE切换GPRS
  8. 文本二叉树折半查询及其截取值
  9. leetcode 852. 山脉数组的峰顶索引(二分查找)
  10. 在知乎上泡了这么久,工作、工资、生活还是没有起色是什么原因?
  11. char* 去除后面几个字符_【算法打卡】去除重复字母
  12. 在Android平台上发现新的恶意程序伪装成杀毒软件挟持设备
  13. 【转】图的割点、桥与双连通分支
  14. H.264熵编码分析
  15. 【linux基础】linux更改python默认版本
  16. python中颜色表_python 颜色表
  17. 小程序页面调用服务器接口授权,小程序的授权和登陆
  18. Oracle跨平台迁移之XTTS
  19. 老子哲学与太极拳技击
  20. 2017国庆 雅礼集训 题解合集

热门文章

  1. Manjaro 17 搭建 redis 4.0.1 集群服务
  2. jQuery事件整合
  3. C语言栈实现逆波兰算法
  4. vs2005 vc++ 生成非托管的 不需要.net运行环境的exe程序方法
  5. 5 Vim编辑器的使用
  6. Adobe After Effects CS6 操作记录
  7. 动态链接库.so和静态链接库.a的区别
  8. python 脚本学习(二)
  9. Javascript构造函数的继承
  10. Servlet读取文件的最好的方式