23-Padans Timedelta时间差

Padans Timedelta时间差

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

Timedelta类周期名、对应单位及其说明:

周期说明单位说明
weeks星期
daysD
hoursh小时
minutesm
secondss
millisecondsms毫秒
microsecondsμs微妙
naosecondsns纳秒

实例:

import pandas as pd
import numpy as np
empdata = pd.read_csv("C:\\Users\\qwy\\Desktop\\data\\empdata.csv")date_str =empdata.loc[:,'HIREDATE']for s  in date_str:print(f"雇佣时间:{s},雇佣后的第二天:{pd.to_datetime(s)+pd.Timedelta(days=1)}")
雇佣时间:1980-12-17,雇佣后的第二天:1980-12-18 00:00:00
雇佣时间:1981-02-20,雇佣后的第二天:1981-02-21 00:00:00
雇佣时间:1981-02-22,雇佣后的第二天:1981-02-23 00:00:00
雇佣时间:1981-04-02,雇佣后的第二天:1981-04-03 00:00:00
雇佣时间:1981-09-28,雇佣后的第二天:1981-09-29 00:00:00
雇佣时间:1981-05-01,雇佣后的第二天:1981-05-02 00:00:00
雇佣时间:1981-06-09,雇佣后的第二天:1981-06-10 00:00:00
雇佣时间:1987-04-19,雇佣后的第二天:1987-04-20 00:00:00
雇佣时间:1981-11-17,雇佣后的第二天:1981-11-18 00:00:00
雇佣时间:1981-09-08,雇佣后的第二天:1981-09-09 00:00:00
雇佣时间:1987-05-23,雇佣后的第二天:1987-05-24 00:00:00
雇佣时间:1981-12-03,雇佣后的第二天:1981-12-04 00:00:00
雇佣时间:1981-12-03,雇佣后的第二天:1981-12-04 00:00:00
雇佣时间:1982-01-23,雇佣后的第二天:1982-01-24 00:00:00

字符串

通过传递字符串可以创建 Timedelta 对象,示例如下:

print(pd.Timedelta('5 days 8 hours 6 minutes 59 seconds'))

输出结果:

5 days 08:06:59

整数

通过传递整数值和unit参数也可以创建一个 Timedelta 对象。

import pandas as pd
print(pd.Timedelta(19,unit='h'))

输出结果:

0 days 19:00:00

数据偏移量

数据偏移量, 比如,周(weeks)、天(days)、小时(hours)、分钟(minutes)、秒(milliseconds)、毫秒、微秒、纳秒都可以使用。

import pandas as pd
print (pd.Timedelta(days=2,hours=6))

输出结果:

2 days 06:00:00

to_timedelta()

您可以使用pd.to_timedelta()方法,将具有 timedelta 格式的值 (标量、数组、列表或 Series)转换为 Timedelta 类型。如果输入是 Series,则返回 Series;如果输入是标量,则返回值也为标量,其他情况输出 TimedeltaIndex。示例如下:

import pandas as pd
import numpy as np
print(pd.to_timedelta(['1 days 06:05:01.00003', '15.5us', 'nan']))
print(pd.to_timedelta(np.arange(5), unit='s'))

输出结果:

TimedeltaIndex(['1 days 06:05:01.000030', '0 days 00:00:00.000015500', NaT], dtype='timedelta64[ns]', freq=None)
TimedeltaIndex(['0 days 00:00:00', '0 days 00:00:01', '0 days 00:00:02','0 days 00:00:03', '0 days 00:00:04'],dtype='timedelta64[ns]', freq=None)

算术操作

通过对datetime64[ns]类型的时间序列或时间戳做算术运算,其运算结果依然是datetime64[ns]数据类型。接下来,我们创建一个带有 Timedelta 与 datetime 的 DataFrame 对象,并对其做一些算术运算。

import pandas as pd
from datetime import datetime
empdata = pd.read_csv("C:\\Users\\qwy\\Desktop\\data\\empdata.csv")date_str =empdata.loc[:,'HIREDATE']for s  in date_str:print(f"雇佣时间:{s},雇佣时间:{datetime.now()-pd.to_datetime(s)}")

输出结果:

雇佣时间:1980-12-17,雇佣时间:15903 days 22:33:24.413328
雇佣时间:1981-02-20,雇佣时间:15838 days 22:33:24.416003
雇佣时间:1981-02-22,雇佣时间:15836 days 22:33:24.417749
雇佣时间:1981-04-02,雇佣时间:15797 days 22:33:24.419878
雇佣时间:1981-09-28,雇佣时间:15618 days 22:33:24.420235
雇佣时间:1981-05-01,雇佣时间:15768 days 22:33:24.420235
雇佣时间:1981-06-09,雇佣时间:15729 days 22:33:24.420235
雇佣时间:1987-04-19,雇佣时间:13589 days 22:33:24.421580
雇佣时间:1981-11-17,雇佣时间:15568 days 22:33:24.421580
雇佣时间:1981-09-08,雇佣时间:15638 days 22:33:24.421580
雇佣时间:1987-05-23,雇佣时间:13555 days 22:33:24.421580
雇佣时间:1981-12-03,雇佣时间:15552 days 22:33:24.421580
雇佣时间:1981-12-03,雇佣时间:15552 days 22:33:24.422997
雇佣时间:1982-01-23,雇佣时间:15501 days 22:33:24.422997

加法运算

import pandas as pd
import numpy as np
empdata = pd.read_csv("C:\\Users\\qwy\\Desktop\\data\\empdata.csv")date_str =empdata.loc[:,'HIREDATE']for s  in date_str:print(f"雇佣时间:{s},雇佣后的第二天:{pd.to_datetime(s)+pd.Timedelta(days=1)}")

输出结果:

雇佣时间:1980-12-17,雇佣后的第二天:1980-12-18 00:00:00
雇佣时间:1981-02-20,雇佣后的第二天:1981-02-21 00:00:00
雇佣时间:1981-02-22,雇佣后的第二天:1981-02-23 00:00:00
雇佣时间:1981-04-02,雇佣后的第二天:1981-04-03 00:00:00
雇佣时间:1981-09-28,雇佣后的第二天:1981-09-29 00:00:00
雇佣时间:1981-05-01,雇佣后的第二天:1981-05-02 00:00:00
雇佣时间:1981-06-09,雇佣后的第二天:1981-06-10 00:00:00
雇佣时间:1987-04-19,雇佣后的第二天:1987-04-20 00:00:00
雇佣时间:1981-11-17,雇佣后的第二天:1981-11-18 00:00:00
雇佣时间:1981-09-08,雇佣后的第二天:1981-09-09 00:00:00
雇佣时间:1987-05-23,雇佣后的第二天:1987-05-24 00:00:00
雇佣时间:1981-12-03,雇佣后的第二天:1981-12-04 00:00:00
雇佣时间:1981-12-03,雇佣后的第二天:1981-12-04 00:00:00
雇佣时间:1982-01-23,雇佣后的第二天:1982-01-24 00:00:00

减法运算

import pandas as pd
import numpy as np
empdata = pd.read_csv("C:\\Users\\qwy\\Desktop\\data\\empdata.csv")date_str =empdata.loc[:,'HIREDATE']for s  in date_str:print(f"雇佣时间:{s},雇佣的前一天:{pd.to_datetime(s)-pd.Timedelta(days=1)}")

输出结果:

雇佣时间:1980-12-17,雇佣的前一天:1980-12-16 00:00:00
雇佣时间:1981-02-20,雇佣的前一天:1981-02-19 00:00:00
雇佣时间:1981-02-22,雇佣的前一天:1981-02-21 00:00:00
雇佣时间:1981-04-02,雇佣的前一天:1981-04-01 00:00:00
雇佣时间:1981-09-28,雇佣的前一天:1981-09-27 00:00:00
雇佣时间:1981-05-01,雇佣的前一天:1981-04-30 00:00:00
雇佣时间:1981-06-09,雇佣的前一天:1981-06-08 00:00:00
雇佣时间:1987-04-19,雇佣的前一天:1987-04-18 00:00:00
雇佣时间:1981-11-17,雇佣的前一天:1981-11-16 00:00:00
雇佣时间:1981-09-08,雇佣的前一天:1981-09-07 00:00:00
雇佣时间:1987-05-23,雇佣的前一天:1987-05-22 00:00:00
雇佣时间:1981-12-03,雇佣的前一天:1981-12-02 00:00:00
雇佣时间:1981-12-03,雇佣的前一天:1981-12-02 00:00:00
雇佣时间:1982-01-23,雇佣的前一天:1982-01-22 00:00:00

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/366974.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JVM专题十一:JVM 中的收集器一

上一篇JVM专题十:JVM中的垃圾回收机制专题中,我们主要介绍了Java的垃圾机制,包括垃圾回收基本概念,重点介绍了垃圾回收机制中自动内存管理与垃圾收集算法。如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回…

OBS 免费的录屏软件

一、下载 obs 【OBS】OBS Studio 的安装、参数设置和录屏、摄像头使用教程-CSDN博客 二、使用 obs & 输出无黑屏 【OBS任意指定区域录屏的方法-哔哩哔哩】 https://b23.tv/aM0hj8A OBS任意指定区域录屏的方法_哔哩哔哩_bilibili 步骤: 1)获取区域…

【智能算法】目标检测算法

目录 一、目标检测算法分类 二、 常见目标检测算法及matlab代码实现 2.1 R-CNN 2.1.1 定义 2.1.2 matlab代码实现 2.2 Fast R-CNN 2.2.1 定义 2.2.2 matlab代码实现 2.3 Faster R-CNN 2.3.1 定义 2.3.2 matlab代码实现 2.4 YOLO 2.4.1 定义 2.4.2 matlab代码实现…

[开源软件] 支持链接汇总

“Common rules: 1- If the repo is on github, the support/bug link is also on the github with issues”" label; 2- Could ask questions by email list;" 3rd party software support link Note gcc https://gcc.gnu.org openssh https://bugzilla.mindrot.o…

作业7.2

用结构体数组以及函数完成: 录入你要增加的几个学生,之后输出所有的学生信息 删除你要删除的第几个学生,并打印所有的学生信息 修改你要修改的第几个学生,并打印所有的学生信息 查找你要查找的第几个学生,并打印该的学生信息 1 /*…

WSL2安装ContOS7并更新gcc

目录 WSL2安装CentOS7下载安装包安装启动CentOS7 CentOS7更换国内源gcc从源码安装gcc卸载gcc CMake中使用gcc关于linux配置文件参考 WSL2安装CentOS7 Windows11官方WSL2已经支持Ubuntu、Open SUSE、Debian。但是没有centos,所以centos的安装方式略有不同。 下载安…

VehicleSPY的安装与使用

VehicleSPY介绍 Vehicle Spy 是美国英特佩斯公司的一款集成了诊断、节点/ECU仿真、数据获取、自动测试和车内通信网络监控等功能的工具,Vehicle Spy软件支持的应用场景很多,无法一一列举,以下是一些常见的应用: 总线监控&#x…

解锁IDEA中Git/SVN Issue Navigation功能:80%程序员都不懂的秘密武器~

文章目录 前言什么是 Git Issue Navigation?配置 Git Issue Navigation1. 打开设置2. 导航到 Issue Navigation 设置3. 添加新的 Issue Navigation 规则具体示例配置 使用 Git Issue Navigation在提交信息中使用 Issue ID实际导航到连接 优点1. 快速定位问题2. 提高…

低代码+定制:优化项目管理的新方案

引言 在当今快速变化的商业环境中,企业需要更加灵活、高效的项目管理工具。低代码平台作为一种新的开发方式,因其能够快速构建应用程序而受到广泛关注。与此同时,软件定制开发仍然是满足特定复杂需求的重要手段。在项目管理中,低代…

javaEE——Servlet

1.web开发概述 所谓web开发,指的是从网页中向后端程序发送请求,与后端程序进行交互 2.java后端开发环境搭建 web后端(javaEE)程序需要运行在服务器中的,这样前端才可以访问得到 3.服务器是什么? ①服务器就是一款软件,可以向其发送请求&#…

【ubuntu18.04】 局域网唤醒 wakeonlan

ai服务器经常因为断电,无法重启,当然可以设置bios 来电启动。 这里使用局域网唤醒配置。 自动开关机设置 工具:ethtool 端口 : enp4s0 Wake-on: d 表示禁用Wake-on: g 激活 ,例如:ethtool -s eth0 wol g 配置/etc/rc.local ,这个文件不存在,自己创建工具下载 tengxun W…

网络研究观:网络犯罪简报

通过犯罪研究人员精选的新闻提要了解最新的全球网络犯罪威胁。 了解不同的数字欺诈以及如何保护自己。 1. 网络犯罪分子冒充 CBI 和 IB 官员:KP 加尔各答警察局警告公民,诈骗者通过发送虚假的 CBI 和 IB 通知来勒索钱财,指控他们在线观看儿…

Python特征工程 — 1.2 特征分箱

目录 1 什么是特征分箱 2 分箱的重要性及其优势 3 有监督分箱 3.1卡方分箱原理 3.2 决策树分箱 4 无监督分箱 4.1 等距分箱 4.2 等频分箱 4.3 分位数分箱 实验数据:链接:https://pan.baidu.com/s/1yT1ct_ZM5uFLgcYsaBxnHg?pwdczum 提取码&…

大数据可视化实验(八):大数据可视化综合实训

目录 一、实验目的... 1 二、实验环境... 1 三、实验内容... 1 1)Python纵向柱状图实训... 1 2)Python水平柱状图实训... 3 3)Python多数据并列柱状图实训.. 3 4)Python折线图实训... 4 5)Python直方图实训...…

Echarts-仪表盘

1.案例一 1.1代码 option {"series": [{"type": "gauge", "startAngle": 180, "endAngle": 0, "min": 0, "max": 100, "radius": "100%","center": ["50%"…

linux下安装kkFileView4

kkFileView为文件文档在线预览解决方案,该项目使用流行的spring boot搭建,易上手和部署,基本支持主流办公文档的在线预览,如doc,docx,xls,xlsx,ppt,pptx,pdf,txt,zip,rar,图片,视频,音频等等 安装kkFileView前需要安装LibreOffic…

复制 pdf 的表格到 markdown 版本的Typora 或者 word 中

在 pdf 中选中复制表格内容,直接粘贴到 typora 中失败,可以使用 txt文件和 excel 做过渡。 准备一个空的 txt 文件,将 pdf 中表格的数据复制粘贴到txt文件中,文本内容会以空格分开,如下图的形式: 打开 exc…

深入学习 Kafka(2)- Partition 和 Topic

1. Partition的作用 Topic是逻辑的概念,Partition是物理的概念: Partition 对一个 Topic 的消息进行物理上的分离,让消息可以分布在不同的实体机器上,可以提升系统吞吐量和并行处理能力。每个Partition可以有多个副本&#xff08…

Windows 获取打印机及端口号方法 (C#)

1. 打开注册表编辑器 regedit 2.选择如下配置 计算机\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Device 其中 “Ne01:” 为端口号 3. 代码 C# using System; using Microsoft.Win32;class Program {static void Main(){string registryPath "SOF…

【C语言】分支(选择)和循环语句

目录 简述选择语句简述if语句单if结构语法格式 if-else结构语法结构 语法结构 循环结构break和continuewhile循环语法结构 for循环语法结构 do while循环语法结构 简述 在c语言中分支和循环语句是极其重要的,就像生活中你难免要做一些判断和循环往复做一些事。 选…