【发布时间】:2019-02-12 02:08:40
【问题描述】:
如何在 python 中获取最近的工作日?
例如,如果今天是工作日,我希望将今天作为日期时间对象,但如果今天是星期日,我希望将星期五作为日期时间对象,假设星期五是最近的业务天。
谢谢,
杰克
【问题讨论】:
标签: python pandas datetime python-datetime
如何在 python 中获取最近的工作日?
例如,如果今天是工作日,我希望将今天作为日期时间对象,但如果今天是星期日,我希望将星期五作为日期时间对象,假设星期五是最近的业务天。
谢谢,
杰克
【问题讨论】:
标签: python pandas datetime python-datetime
你可以使用:
import pandas as pd
pd.datetime.today() - pd.tseries.offsets.BDay(0)
更新
today = pd.datetime(2018,9,2)
np.where((today - pd.tseries.offsets.BDay(0)) > today,
(today - pd.tseries.offsets.BDay(1)),
(today - pd.tseries.offsets.BDay(0)))
[output]
Timestamp('2018-08-31 00:00:00')
【讨论】:
pandas 对我来说似乎有点矫枉过正,但是..
datetime.datetime(2018,9,2) - pd.tseries.offsets.BDay(0),我希望得到 2018 年 8 月 31 日(最近一个工作日),但我会得到 9 月 3 日(将来)。我能做些什么来纠正这个问题吗?
pandas 经常被导入