本文简要介绍 python 语言中 numpy.busday_offset
的用法。
用法:
numpy.busday_offset(dates, offsets, roll='raise', weekmask='1111100', holidays=None, busdaycal=None, out=None)
首先根据
roll
规则将日期调整为有效日期,然后将偏移量应用于以有效天数计算的给定日期。- dates: 类似 datetime64[D] 的数组
要处理的日期数组。
- offsets: int的数组
使用
dates
广播的偏移量数组。- roll: {‘raise’, ‘nat’, ‘forward’, ‘following’, ‘backward’, ‘preceding’, ‘modifiedfollowing’, ‘modifiedpreceding’},可选
如何处理不属于有效日期的日期。默认值为‘raise’。
‘raise’ 表示为无效的一天引发异常。
‘nat’ 表示返回无效日期的 NaT (not-a-time)。
‘forward’和‘following’的意思是取第一个有效日的时间晚一些。
‘backward’和‘preceding’表示提前取第一个有效日的时间。
‘modifiedfollowing’ 表示将第一个有效日期的时间推迟,除非它跨越月份边界,在这种情况下,将第一个有效日期提前。
‘modifiedpreceding’ 表示提前取第一个有效日期,除非它跨越月份边界,在这种情况下取第一个有效日期的时间稍晚。
- weekmask: str 或 数组 的 bool,可选
一个 seven-element 数组,指示周一到周日中的哪一天是有效日期。可以指定为 length-seven 列表或数组,如 [1,1,1,1,1,0,0]; length-seven 字符串,例如 ‘1111100’;或类似“Mon Tue Wed Thu Fri”的字符串,由工作日的 3 个字符缩写组成,可选用空格分隔。有效缩写为: Mon Tue Wed Thu Fri Sat Sun
- holidays: 类似 datetime64[D] 的数组,可选
被视为无效日期的日期数组。它们可以按任何顺序指定,而NaT (not-a-time) 日期将被忽略。此列表以适合快速计算有效天数的规范化形式保存。
- busdaycal: busdaycalendar,可选
指定有效日期的
busdaycalendar
对象。如果提供此参数,则不能提供 weekmask 和假期。- out: datetime64[D] 数组,可选
如果提供,此数组将填充结果。
- out: datetime64[D] 数组
一个具有来自广播
dates
和offsets
的形状的数组,其中包含应用了偏移的日期。
参数:
返回:
例子:
>>> # First business day in October 2011 (not accounting for holidays) ... np.busday_offset('2011-10', 0, roll='forward') numpy.datetime64('2011-10-03') >>> # Last business day in February 2012 (not accounting for holidays) ... np.busday_offset('2012-03', -1, roll='forward') numpy.datetime64('2012-02-29') >>> # Third Wednesday in January 2011 ... np.busday_offset('2011-01', 2, roll='forward', weekmask='Wed') numpy.datetime64('2011-01-19') >>> # 2012 Mother's Day in Canada and the U.S. ... np.busday_offset('2012-05', 1, roll='forward', weekmask='Sun') numpy.datetime64('2012-05-13')
>>> # First business day on or after a date ... np.busday_offset('2011-03-20', 0, roll='forward') numpy.datetime64('2011-03-21') >>> np.busday_offset('2011-03-22', 0, roll='forward') numpy.datetime64('2011-03-22') >>> # First business day after a date ... np.busday_offset('2011-03-20', 1, roll='backward') numpy.datetime64('2011-03-21') >>> np.busday_offset('2011-03-22', 1, roll='backward') numpy.datetime64('2011-03-23')
相关用法
- Python numpy busday_count用法及代码示例
- Python numpy busdaycalendar用法及代码示例
- Python numpy broadcast用法及代码示例
- Python numpy byte_bounds用法及代码示例
- Python numpy block用法及代码示例
- Python numpy broadcast.nd用法及代码示例
- Python numpy base_repr用法及代码示例
- Python numpy bartlett用法及代码示例
- Python numpy broadcast.size用法及代码示例
- Python numpy blackman用法及代码示例
- Python numpy broadcast.reset用法及代码示例
- Python numpy broadcast_shapes用法及代码示例
- Python numpy bitwise_xor用法及代码示例
- Python numpy binary_repr用法及代码示例
- Python numpy bitwise_and用法及代码示例
- Python numpy broadcast.numiter用法及代码示例
- Python numpy broadcast.iters用法及代码示例
- Python numpy broadcast_to用法及代码示例
- Python numpy broadcast_arrays用法及代码示例
- Python numpy broadcast.ndim用法及代码示例
- Python numpy bmat用法及代码示例
- Python numpy bincount用法及代码示例
- Python numpy broadcast.index用法及代码示例
- Python numpy bitwise_or用法及代码示例
- Python numpy RandomState.standard_exponential用法及代码示例
注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.busday_offset。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。