如何用NumPy找到某个月的第一个星期一
为了找到某个月的第一个星期一,我们将使用numpy模块,即numpy.busday_offset()方法
语法: np.busday_offset(‘date’, 0, roll=’forward’, weekmask=’Mon’)
参数:
date:要处理的日期数组。
offsets:偏移量的数组,它与日期一起广播。
roll:它采用以下数值。
- raise是指对一个无效的日子提出一个异常。
- nat意味着返回一个无效日期的NaT(not-a-time)。
- 向前和向后是指在时间上晚于第一个有效日。
- 向后和前面的意思是在时间上提前取第一个有效的日子。
- modifiedfollowing是指在时间上晚于第一个有效日,除非它跨越了月份边界,在这种情况下,在时间上早于第一个有效日。
- 修改前是指在时间上将第一个有效日提前,除非它跨越了月的边界,在这种情况下,在时间上将第一个有效日推迟。
weekmask:数组,表明周一到周日中哪些是有效日期。
返回: (outarray of datetime64)。一个具有从广播日期和偏移量一起的形状的数组,包含应用偏移量的日期。
下面是一些使用numpy.busday_offset()方法来获取一个月的第一个星期一的程序。
示例 #1:
在这个例子中,我们将找到2017年5月的第一个星期一。
# import module
import numpy
# input year and month
yearMonth = '2017-05'
# getting date of first monday
date = numpy.busday_offset(yearMonth, 0,
roll='forward',
weekmask='Mon')
# display date
print(date)
输出:
2017-05-01
示例 #2:
在这里,我们将找到2001年2月的第一个星期一。
# import module
import numpy
# input year and month
yearMonth = '2001-02'
# getting date of first monday
date = numpy.busday_offset(yearMonth, 0,
roll='forward',
weekmask='Mon')
# display date
print(date)
输出:
2001-02-05
示例 #3:
在这里,我们将找到2020年11月的第一个星期一。
# import module
import numpy
# input year and month
yearMonth = '2020-11'
# getting date of first monday
date = numpy.busday_offset(yearMonth, 0,
roll='forward',
weekmask='Mon')
# display date
print(date)
输出:
2001-11-02