Python酷库之旅-第三方库Pandas(026)

目录

一、用法精讲

65、pandas.bdate_range函数

65-1、语法

65-2、参数

65-3、功能

65-4、返回值

65-5、说明

65-6、用法

65-6-1、数据准备

65-6-2、代码示例

65-6-3、结果输出

66、pandas.period_range函数

66-1、语法

66-2、参数

66-3、功能

66-4、返回值

66-5、说明

66-6、用法

66-6-1、数据准备

66-6-2、代码示例

66-6-3、结果输出 

67、pandas.timedelta_range函数

67-1、语法

67-2、参数

67-3、功能

67-4、返回值

67-5、说明

67-6、用法

67-6-1、数据准备

67-6-2、代码示例

67-6-3、结果输出

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

65、pandas.bdate_range函数
65-1、语法
# 65、pandas.bdate_range函数
pandas.bdate_range(start=None, end=None, periods=None, freq='B', tz=None, normalize=True, name=None, weekmask=None, holidays=None, inclusive='both', **kwargs)
Return a fixed frequency DatetimeIndex with business day as the default.Parameters:
startstr or datetime-like, default None
Left bound for generating dates.endstr or datetime-like, default None
Right bound for generating dates.periodsint, default None
Number of periods to generate.freqstr, Timedelta, datetime.timedelta, or DateOffset, default ‘B’
Frequency strings can have multiples, e.g. ‘5h’. The default is business daily (‘B’).tzstr or None
Time zone name for returning localized DatetimeIndex, for example Asia/Beijing.normalizebool, default False
Normalize start/end dates to midnight before generating date range.namestr, default None
Name of the resulting DatetimeIndex.weekmaskstr or None, default None
Weekmask of valid business days, passed to numpy.busdaycalendar, only used when custom frequency strings are passed. The default value None is equivalent to ‘Mon Tue Wed Thu Fri’.holidayslist-like or None, default None
Dates to exclude from the set of valid business days, passed to numpy.busdaycalendar, only used when custom frequency strings are passed.inclusive{“both”, “neither”, “left”, “right”}, default “both”
Include boundaries; Whether to set each bound as closed or open.New in version 1.4.0.**kwargs
For compatibility. Has no effect on the result.Returns:
DatetimeIndex
65-2、参数

65-2-1、start(可选,默认值为None)起始时间,字符串或datetime-like对象。可以为空,如果指定了end和periods。

65-2-2、end(可选,默认值为None)结束时间,字符串或datetime-like对象。可以为空,如果指定了start和periods。

65-2-3、periods(可选,默认值为None)生成的时间点数,如果指定了start或end其中之一,此参数必需。

65-2-4、freq(可选,默认值为'B')频率字符串,常见的频率字符串包括'B'(工作日)、'C'(自定义工作日),还可以用pd.offsets对象定义复杂频率。

65-2-5、tz(可选,默认值为None)时区字符串或tzinfo对象。

65-2-6、normalize(可选,默认值为True)将时间标准化到午夜时间。

65-2-7、name(可选,默认值为None)生成的DatetimeIndex的名称。

65-2-8、weekmask(可选,默认值为None)指定一周中哪些天是工作日,可以是一个字符串,比如'Mon Tue Wed Thu Fri',默认值取决于freq。

65-2-9、holidays(可选,默认值为None)指定节假日,作为一个日期列表,用于排除这些日期。

65-2-10、inclusive(可选,默认值为'both')包括或排除起始和结束点,可以是'both'、'neither'、'left'或'right'。

65-2-11、**kwargs(可选)其他关键字参数,这些参数将被传递给DateOffset构造函数(如果freq是一个DateOffset对象或可以从字符串解析为DateOffset对象)。

65-3、功能

        用于生成工作日(business days)日期范围的一个函数,该函数专为处理财务、经济等需要排除周末和节假日的数据集而设计。

65-4、返回值

        返回一个Pandas DatetimeIndex对象,该对象包含了根据指定参数生成的日期范围,这些日期都是工作日,除非在holidays参数中明确指定了某些日期为非工作日。  

65-5、说明

        该函数为处理时间序列数据中的工作日提供了极大的便利,使得数据分析师和科学家能够更专注于数据的分析和解释,而无需担心日期的计算和筛选问题。

65-6、用法
65-6-1、数据准备
65-6-2、代码示例
# 65、pandas.bdate_range函数
import pandas as pd
# 生成从2024年1月1日到2024年12月31日的工作日日期范围
bdate_range = pd.bdate_range(start='2024-01-01', end='2024-12-31')
print(bdate_range)
65-6-3、结果输出
# 65、pandas.bdate_range函数
# DatetimeIndex(['2024-01-01', '2024-01-02', '2024-01-03', '2024-01-04',
#                '2024-01-05', '2024-01-08', '2024-01-09', '2024-01-10',
#                '2024-01-11', '2024-01-12',
#                ...
#                '2024-12-18', '2024-12-19', '2024-12-20', '2024-12-23',
#                '2024-12-24', '2024-12-25', '2024-12-26', '2024-12-27',
#                '2024-12-30', '2024-12-31'],
#               dtype='datetime64[ns]', length=262, freq='B')
66、pandas.period_range函数
66-1、语法
# 66、pandas.period_range函数
pandas.period_range(start=None, end=None, periods=None, freq=None, name=None)
Return a fixed frequency PeriodIndex.The day (calendar) is the default frequency.Parameters:
start
str, datetime, date, pandas.Timestamp, or period-like, default None
Left bound for generating periods.end
str, datetime, date, pandas.Timestamp, or period-like, default None
Right bound for generating periods.periods
int, default None
Number of periods to generate.freq
str or DateOffset, optional
Frequency alias. By default the freq is taken from start or end if those are Period objects. Otherwise, the default is "D" for daily frequency.name
str, default None
Name of the resulting PeriodIndex.Returns:
PeriodIndex
66-2、参数

66-2-1、start(可选,默认值为None)str或Period对象,生成周期范围的起始点,如果指定了end和periods,则start是必需的。它应该是一个可以解析为周期的字符串(如'2023Q1'表示2023年的第一季度)或一个Period对象。

66-2-2、end(可选,默认值为None)str或Period对象,生成周期范围的结束点,如果指定了start和periods,则end是可选的。同样,它应该是一个可以解析为周期的字符串或一个Period对象。

66-2-3、periods(可选,默认值为None)int要生成的周期数,如果指定了start和end,则periods是可选的。

66-2-4、freq(可选,默认值为None)str或DateOffset对象,两个相邻周期之间的频率。常见的频率有 'Y'(年)、'Q'(季度)、'M'(月)、'D'(日)等,如果不指定,Pandas会尝试根据start和end(如果提供了)自动推断出频率。

66-2-5、name(可选,默认值为None)str返回的PeriodIndex的名称。

66-3、功能

        用于生成固定频率的PeriodIndex(周期索引)的一个功能强大的工具,该函数通过指定的起始点、结束点、周期数以及频率等参数,生成一个包含多个周期的索引序列,这些周期可以是年、季度、月、日等不同的时间单位。

66-4、返回值

        返回一个Pandas PeriodIndex对象,该对象包含了根据指定参数生成的周期范围。

66-5、说明

        无

66-6、用法
66-6-1、数据准备
66-6-2、代码示例
# 66、pandas.period_range函数
import pandas as pd
# 生成从2024年第一季度到2024年第四季度的季度周期索引
q_range = pd.period_range(start='2024Q1', end='2024Q4', freq='Q')
print(q_range, end='\n\n')
# 访问第一个周期
first_quarter = q_range[0]
print(first_quarter, end='\n\n')
print(q_range.freq)
66-6-3、结果输出 
# 66、pandas.period_range函数
# PeriodIndex(['2024Q1', '2024Q2', '2024Q3', '2024Q4'], dtype='period[Q-DEC]')
# 
# 2024Q1
# 
# <QuarterEnd: startingMonth=12>
67、pandas.timedelta_range函数
67-1、语法
# 67、pandas.timedelta_range函数
pandas.timedelta_range(start=None, end=None, periods=None, freq=None, name=None, closed=None, *, unit=None)
Return a fixed frequency TimedeltaIndex with day as the default.Parameters:
startstr or timedelta-like, default None
Left bound for generating timedeltas.endstr or timedelta-like, default None
Right bound for generating timedeltas.periodsint, default None
Number of periods to generate.freqstr, Timedelta, datetime.timedelta, or DateOffset, default ‘D’
Frequency strings can have multiples, e.g. ‘5h’.namestr, default None
Name of the resulting TimedeltaIndex.closedstr, default None
Make the interval closed with respect to the given frequency to the ‘left’, ‘right’, or both sides (None).unitstr, default None
Specify the desired resolution of the result.New in version 2.0.0.Returns:
TimedeltaIndex
67-2、参数

67-2-1、start(可选,默认值为None)str或Timedelta,生成时间差范围的起始点,可以是表示时间差的字符串(如'1 days')或Timedelta对象,如果未指定,则必须指定periods参数。

67-2-2、end(可选,默认值为None)str或Timedelta,生成时间差范围的结束点,与start参数类似,可以是字符串或Timedelta对象,如果指定了end,则生成的时间差范围将包括这个结束点(取决于closed参数的值)。

67-2-3、periods(可选,默认值为None)int,时间差的数量,如果指定了periods,则生成的时间差范围将包含指定数量的等间隔时间差;如果同时指定了start和end,则periods可以被忽略或用于计算频率。

67-2-4、freq(可选,默认值为None)str或DateOffset,时间差的频率,可以是如'D'(天)、'H'(小时)、'T'(分钟)等频率字符串,或者是DateOffset对象。如果未指定,则频率将根据start、end和periods 参数自动计算(如果可能的话)。

67-2-5、name(可选,默认值为None)str,返回的TimedeltaIndex的名称。

67-2-6、closed(可选,默认值为None){'left', 'right'},指示区间是“左闭右开”('left')还是“左开右闭”('right'),这仅在同时指定了start和end时有效。默认是 'right',即区间包括结束点但不包括起始点(在逻辑上,因为时间差通常从0开始计数)。

67-2-7、unit(可选,默认值为None)从Pandas 1.1.0开始不推荐使用,因为freq参数已经足够灵活来指定时间差的单位,如果同时指定了freq和unit,freq将优先。

67-3、功能

        用于生成时间序列的时间差(timedelta)范围的一个函数,该函数允许你根据起始时间、结束时间、时间差的数量、时间频率等参数来创建一个TimedeltaIndex,这个索引包含了等间隔的时间差。

67-4、返回值

        返回值是一个Pandas TimedeltaIndex对象,该对象具有以下特点:

67-4-1、类型:TimedeltaIndex是Pandas中专门用于存储时间差索引的类型,它提供了丰富的日期时间操作功能。
67-4-2、内容:返回的TimedeltaIndex对象包含了根据指定参数生成的等间隔时间差序列,这些时间差按照指定的频率排列,并且每个时间差都对应着一个具体的时间长度(如1天、2小时等)。
67-4-3、属性:TimedeltaIndex对象具有多个属性,如dtype(数据类型,表示时间差的纳秒表示)、freq(频率,表示时间差的生成频率)、inferred_freq(推断的频率,当没有明确指定freq时,Pandas 会尝试推断时间差序列的频率)等,这些属性描述了时间差索引的基本信息。
67-4-4、操作:TimedeltaIndex对象支持多种操作,如索引、切片、算术运算(如加法、减法)等,这些操作使得用户能够方便地对时间差索引进行进一步的处理和分析。

67-5、说明

        无

67-6、用法
67-6-1、数据准备
67-6-2、代码示例
# 67、pandas.timedelta_range函数
# 67-1、使用start和periods
import pandas as pd
# 从0天0小时开始,生成包含5个时间差的序列,每个时间差为1天
td_range = pd.timedelta_range(start='0 days', periods=5, freq='D')
print(td_range, end='\n\n')# 67-2、使用start、end和freq
import pandas as pd
# 从1小时开始,到10小时结束,每小时一个时间差
td_range = pd.timedelta_range(start='1 hours', end='10 hours', freq='H')
print(td_range, end='\n\n')# 67-3、使用end和periods
import pandas as pd
# 从0天开始,到3天结束,包含4个时间差(注意:这里不直接指定freq,但Pandas会尝试推断)
td_range = pd.timedelta_range(end='3 days', periods=4)
print(td_range, end='\n\n')# 67-4、指定name参数
import pandas as pd
# 生成时间差序列,并指定索引名称
td_range = pd.timedelta_range(start='0 days', periods=5, freq='D', name='Time_Differences')
print(td_range)
67-6-3、结果输出
# 67、pandas.timedelta_range函数
# 67-1、使用start和periods
# TimedeltaIndex(['0 days', '1 days', '2 days', '3 days', '4 days'], dtype='timedelta64[ns]', freq='D')# 67-2、使用start、end和freq
# TimedeltaIndex(['0 days 01:00:00', '0 days 02:00:00', '0 days 03:00:00',
#                 '0 days 04:00:00', '0 days 05:00:00', '0 days 06:00:00',
#                 '0 days 07:00:00', '0 days 08:00:00', '0 days 09:00:00',
#                 '0 days 10:00:00'],
#                dtype='timedelta64[ns]', freq='h')# 67-3、使用end和periods
# TimedeltaIndex(['0 days', '1 days', '2 days', '3 days'], dtype='timedelta64[ns]', freq='D')# 67-4、指定name参数
# TimedeltaIndex(['0 days', '1 days', '2 days', '3 days', '4 days'], dtype='timedelta64[ns]', name='Time_Differences', freq='D')

二、推荐阅读

1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页

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

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

相关文章

Gooxi受邀参加第三届中国数据中心服务器与设备峰会

7月2-3日&#xff0c;第三届中国数据中心服务器与设备峰会在上海召开&#xff0c;作为国内最聚焦在服务器领域的专业峰会&#xff0c;吸引了来自全国的行业专家、服务器与机房设备厂家&#xff0c;企业IT用户&#xff0c;数据中心业主共同探讨AIGC时代下智算中心设备的设计之道…

2024年最新最全面的Apifox使用-自动化测试

正文 编排测试场景运行测试持续集成查看测试结果 编排测试场景 新建测试场景 测试场景用于将多个接口有序地组合在一起运行&#xff0c;用于测试一个完整业务流程。 打开 Apifox 后点击左侧菜单栏中的“自动化测试”&#xff0c;点击左上角 号&#xff0c;选择所归属的目录…

记录|.NET上位机开发和PLC通信的实现

本文记录源自&#xff1a;B站视频 实验结果&#xff1a;跟视频做下来是没有问题的。能运行。 目录 前言一、项目Step1. 创建项目Step2. 创建动态图片展示Step3. 创建图片型按钮Step4. 创建下拉框Step1~4的效果展示Step5. 编程实体类操作类Main函数 Step1~5的效果展示Main函数 最…

Binder框架(二) ServiceManager初始化

0、总体流程四部 开机由init进程解析init.rc文件启动servicemanager.rc。启动会调用main.cpp的main函数 main函数里面主要做了以下几件事 &#xff1a; 1.1 打开/dev/binder设备; 1.2 通过mmap映射设备的内存空间到ServiceManager进程中。 1.3 设置ServiceManager为context…

气象水文耦合模式WRF-Hydro建模、编译及运行流程、依赖库准备、案例实践等

目录 第一部分 WRF-Hydro模型功能及运行流程、依赖库准备 第二部分 WRF-Hydro模式编译、离线运行及案例实践 第三部分 结合多案例进行模式数据制备及实践应用 第四部分 模式耦合编译及运行、总结 更多应用 WRF-Hydro模型是一个分布式水文模型&#xff0c;‌它基于WRF‌陆面…

数据库启动报ORA-600 6711故障分析处理---惜分飞

几个月以前的一个数据库故障,今天拿出来在win上重新分析,数据库启动报ORA-600 6711错 C:\Users\XFF>SQLPLUS / AS SYSDBA SQL*Plus: Release 12.1.0.2.0 Production on 星期日 7月 14 16:17:32 2024 Copyright (c) 1982, 2014, Oracle. All rights reserved. 已连接到空…

LabVIEW扬尘控制系统

设计了一套基于LabVIEW的扬尘控制系统&#xff0c;通过监测TsP&#xff08;总悬浮颗粒物&#xff09;浓度、风向和摄像头视频&#xff0c;实现对环境的综合监控和扬尘控制。系统可以自动判断扬尘位置&#xff0c;并驱动抑尘设备进行抑尘。硬件选用NI cDAQ-9178数据采集模块、Om…

linux高级编程(网络)(www,http,URL)

数据的封包和拆包 封包&#xff1a; 应用层数据&#xff08;例如HTTP请求&#xff09;被传递给传输层。传输层&#xff08;TCP&#xff09;在数据前添加TCP头部&#xff08;包含端口号、序列号等&#xff09;。网络层&#xff08;IP&#xff09;在TCP段前添加IP头部&#xff…

数据库:基本操作

SQL struct query language 关系型数据库 非关系 芒果db ddl data defination language 建表 dml 新增 修改 删除一行 data modifty dql 查询 data query language 查询 select 数据库 sun solaris gnu 1、分类&#xff1a; 大型 中型 …

Linux FFmpeg安装教程

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…

DHCP服务、FTP服务

一、DHCP 1.1 DHCP是什么 DHCP&#xff08;Dynamic Host Configuration Protocol&#xff0c;动态主机配置协议&#xff09;是一种网络协议&#xff0c;用于自动分配 IP 地址和其他网络配置信息给网络中的设备 1.2 DHCP的好处 自动化: 减少了手动配置 IP 地址和网络参数的工…

Vulnhub:DC-1

1.环境搭建 靶机下载地址 将下载的靶机导入到Oracle VM VirtualBox中&#xff0c;设置仅主机模式&#xff0c;使用和kali相同的网卡 2.渗透过程 使用nmap工具进行主机发现扫描 nmap -sn 192.168.56.0/24 发现靶机ip地址&#xff0c;使用nmap工具进行靶机端口扫描 nmap -sS…

Python算法分析学习目标及能力验证

1、突破编程的关键点 不破不立&#xff0c;如何破&#xff1f;如何立&#xff1f; 人生苦短&#xff0c;我用python 目标&#xff1a;不在于多&#xff0c;而在于准&#xff1b; 验证&#xff1a;必须量化&#xff0c;否则都是虚夸。 那么目标怎么准确可量化呢&#xff1f; …

IDEA创建普通Java项目

环境准备 Java环境 运行javac查看java环境是否安装完成 开发工具Intellij IDEA 下载地址&#xff1a;https://www.jetbrains.com/idea/download/?sectionwindows 创建项目 点击新建项目 填入项目名字&#xff0c;项目路径&#xff0c;选择maven,点击下面的创建 运行项目 …

Docker的数据管理和网络通信

目录 一、Docker 的数据管理 1&#xff0e;数据卷 2&#xff0e;数据卷容器 二、端口映射 三、容器互联&#xff08;使用centos镜像&#xff09; 四、*Docker 镜像的创建 1&#xff0e;基于现有镜像创建 2&#xff0e;基于本地模板创建 3&#xff0e;基于Dockerfile 创…

BL201分布式I/O耦合器连接Profinet网络

钡铼技术的BL201分布式I/O耦合器是一个用于Profinet网络的设备&#xff0c;用于连接远程输入/输出&#xff08;I/O&#xff09;设备到控制系统&#xff0c;如可编程逻辑控制器&#xff08;PLC&#xff09;&#xff0c;能够实现分布式的I/O连接和通信。 它支持标准Profinet IO …

一文说透Springboot单元测试

你好&#xff0c;我是柳岸花开。 一、单元测试说明 1 单元测试的优点与基本原则 一个好的单元测试应该具备以下FIRST 原则和AIR原则中的任何一条&#xff1a; 单元测试的FIRST 规则 Fast 快速原则&#xff0c;测试的速度要比较快&#xff0c; Independent 独立原则&#xff0c;…

【Springboot】新增profile环境配置应用启动失败

RT 最近接手了一个新的项目&#xff0c;为了不污染别人的环境&#xff0c;我新增了一个自己的环境配置。结果&#xff0c;在启动的时候总是失败&#xff0c;就算是反复mvn clean install也是无效。 问题现象 卡住无法进行下一步 解决思路 由于之前都是能启动的&#xff0c…

随机过程基础:3.平稳过程(2)

平稳过程是指随机过程的统计特性&#xff08;如均值、方差、协方差等&#xff09;不随时间变化。我们可以在时间域或频率域上研究其性质。以下是对平稳过程的协方差函数和功率谱密度的详细讨论。 一、协方差函数 协方差函数就像是描述两个随机变量之间关系的一种“尺子”。想象…

LLM之Prompt(四)| OpenAI、微软发布Prompt技术报告

摘要 生成式人工智能 &#xff08;GenAI&#xff09; 系统正越来越多地部署在各行各业和研究机构。开发人员和用户通过使用提示或提示工程与这些系统进行交互。虽然提示是一个广泛提及且被研究的概念&#xff0c;但由于该领域的新生&#xff0c;存在相互矛盾的术语和对构成提示…