如何定义CustomBusinessHour全天?

问题描述 投票:1回答:1

我分析了每小时工作24小时的设备的运行情况(但不是全年),但我有错误。

from pandas.tseries.offsets import CustomBusinessHour

Use=CustomBusinessHour(
    start='00:00',
    end='24:00',
    weekmask=(1,1,1,1,1,1,0)
)

或者

Use=CustomBusinessHour(
    start='00:00',
    end='00:00',
    weekmask=(1,1,1,1,1,1,0)
)

(或 end='23:59' 做奇怪的事情,它每天移动一分钟)(或 end='23:00' 不适合,它停止在22:00而不是23:00)

你知道,如果它是可能创建自定义BusinessHour,工作了一整天?

我的目标是生成一个系列的 小时 在一年内工作。pd.date_range(dt.date(2020,1,1), dt.date(2021,1,1), closed='left', freq=Use)

非常感谢你

python pandas time-series series date-range
1个回答
0
投票

我已经绕过了这个问题,我使用了 自定义商务日 而不是 自定义营业时间

Use=CustomBusinessDay(weekmask=(1,1,1,1,1,1,0))

然后

Cal=pd.date_range(dt.date(2020,1,1),dt.date(2021,1,1),freq=Use,closed='left').to_series()

我转变为Series能够增加一天,因为。asfreq() 到了一天就停止,直到一天结束,它不会从一个小时到另一个小时采样。

Cal.loc[Cal.iloc[-1]+pd.Timedelta(days=1)]=Cal.iloc[-1]+pd.Timedelta(days=1)

最后,我每小时重新取样(我排除了最后一个小时,也就是一天中的第一个小时后)。

Cal=Cal.asfreq('H')[:-1].index
© www.soinside.com 2019 - 2024. All rights reserved.