本文簡要介紹 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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。