Pandas怎么生成工作日与节假日

Pandas可以通过pandas.bdate_range()函数生成工作日,并通过自定义日历参数来生成节假日。下面是一个示例,演示如何使用Pandas生成2021年的工作日和自定义的节假日:import pandas as pdfrom pandas.tseries.holiday import AbstractHolidayCalendar, Holiday, nearest_workda

Pandas可以通过pandas.bdate_range()函数生成工作日,并通过自定义日历参数来生成节假日。

下面是一个示例,演示如何使用Pandas生成2021年的工作日和自定义的节假日:

import pandas as pd
from pandas.tseries.holiday import AbstractHolidayCalendar, Holiday, nearest_workday, USMartinLutherKingJr, USPresidentsDay, GoodFriday, USMemorialDay, USLaborDay, USThanksgivingDay, USChristmasDay
from pandas.tseries.offsets import CustomBusinessDay

# 自定义节假日日历
class CustomCalendar(AbstractHolidayCalendar):
    rules = [
        Holiday('New Year', month=1, day=1),
        Holiday('Independence Day', month=7, day=4),
        Holiday('Thanksgiving', month=11, day=1, offset=USThanksgivingDay),
        Holiday('Christmas', month=12, day=25)
    ]

# 设置工作日和节假日参数
bday_us = CustomBusinessDay(calendar=CustomCalendar())
holidays = pd.to_datetime(['2021-01-01', '2021-07-04', '2021-11-25', '2021-12-25'])

# 生成2021年的工作日
start_date = '2021-01-01'
end_date = '2021-12-31'
dates = pd.bdate_range(start_date, end_date, freq=bday_us, holidays=holidays)

# 打印结果
print(dates)

上述代码中,我们定义了一个CustomCalendar类来表示自定义的节假日日历,其中包括了一些常见的节假日。然后,我们使用CustomBusinessDay来创建一个自定义的工作日频率,将自定义的节假日日历作为参数传递给它。最后,我们通过pd.bdate_range()函数生成2021年的工作日,同时指定了节假日参数。最后,我们打印生成的日期结果。

注意:上述代码是以美国为例,如果需要生成其他地区的工作日和节假日,需要根据相应的节假日日历进行调整。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/851326.html

(0)
派派
上一篇 2024-02-02
下一篇 2024-02-02

相关推荐

  • 服务器托管相比自建数据中心有什么优势

    成本低廉:服务器托管通常可以以更低的价格获得相同或类似的服务。自建数据中心需要购买硬件设备、租赁物理空间、雇佣技术人员等成本较高。灵活性:服务器托管通常提供更灵活的服务选择和升级选项,可以根据需求随时扩展或缩小服务器资源。专业维护:服务器托管服务提供商通常有专业的技术团队负责维护和管理服务器,用户无需担心服务器运行和维护的问题。高可靠性:服务器托管服务提供商通常拥有先进的技术设备和设施,可以提供更

    2024-04-30
    0
  • c++中free函数的用法是什么

    在c++中,没有free函数,但有delete和delete[]来释放通过new和new[]分配的内存。delete用于释放通过new分配的单个对象的内存。delete[]用于释放通过new[]分配的数组的内存。示例:int* ptr = new int; // 分配一个int类型的内存delete ptr; // 释放内存int* arr = new int[5]; // 分配一个int类

    2024-03-15
    0
  • sql中replace函数的应用场景有哪些

    替换特定字符或子字符串:可以使用REPLACE函数来替换文本字段中的特定字符或子字符串。处理空值:可以使用REPLACE函数来将空值替换为其他值,以便在数据处理中更好地处理空值。修改数据格式:可以使用REPLACE函数来修改数据的格式,比如将日期字段从”YYYY-MM-DD”格式转换为”MM/DD/YYYY”格式。清洁数据:可以使用REPLACE函数来清洁数据,去除掉不需要的字符或格式。数据转换:

    2024-03-15
    0
  • java如何实现文件复制功能

    在Java中,可以使用FileInputStream和FileOutputStream来实现文件复制功能。以下是一个简单的示例代码:import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class FileCop

    2024-03-19
    0
  • C#中怎么实现并使用接口隔离原则

    在C#中实现接口隔离原则,可以通过定义多个小而精简的接口,而不是一个大而臃肿的接口。这样可以让每个接口只包含一个特定功能或行为,使得接口更加高内聚、低耦合,提高代码的灵活性和可维护性。下面是一个简单的示例,演示如何在C#中实现和使用接口隔离原则:// 定义多个小而精简的接口public interface IWorker{void Work();}public interface IEa

    2024-04-04
    0
  • linux中postman的用法是什么

    在Linux中使用Postman与在其他操作系统中使用它大致相同,但需要通过下载和设置Linux版的Postman来开始使用。以下是在Linux中使用Postman的基本步骤:下载Postman软件包:您可以从Postman的官方网站下载Linux版的Postman软件包(通常是一个压缩文件)。解压和安装软件包:将下载的软件包解压到您选择的目录中,然后运行可执行文件或安装脚本以完成安装。运行Pos

    2024-02-27
    0

发表回复

登录后才能评论