熊貓目前允許您將工作日添加到給定日期datetime.today() + 3*BDay()
。我想延長一個營業日的想法,以排除假期和週末的給定日期索引。這可能將一個DateIndex合併到一個偏移量中嗎?帶有假日日曆的熊貓日期補償
3
A
回答
1
目前我認爲你需要創建一個自定義的子類。您需要覆蓋apply
和onOffset
方法來考慮您的假期日曆。
最終,我們應該在business-X頻率中添加一個可選的假期日曆參數。我做了一個GitHub的問題,以保持它的軌道:https://github.com/pydata/pandas/issues/2301
3
的CustomBusinessDay類現在已經合併到大熊貓即將0.12版本,你就可以做一些類似如下:
>>> from pandas.tseries.offsets import CustomBusinessDay
>>>
>>> # As an interesting example, let's look at Egypt where
>>> # a Friday-Saturday weekend is observed.
>>> weekmask_egypt = 'Sun Mon Tue Wed Thu'
>>>
>>> # They also observe International Workers' Day so let's
>>> # add that as a holiday for a couple of years
>>> holidays = ['2012-05-01', datetime(2013, 5, 1), np.datetime64('2014-05-01')]
>>>
>>> bday_egypt = CustomBusinessDay(holidays=holidays, weekmask=weekmask_egypt)
>>> dt = datetime(2013, 4, 30)
>>> print dt + 2 * bday_egypt
2013-05-05 00:00:00
>>>
>>> dts = date_range(dt, periods=5, freq=bday_egypt).to_series()
>>> print dts
2013-04-30 2013-04-30 00:00:00
2013-05-02 2013-05-02 00:00:00
2013-05-05 2013-05-05 00:00:00
2013-05-06 2013-05-06 00:00:00
2013-05-07 2013-05-07 00:00:00
Freq: C, dtype: datetime64[ns]
>>>
>>> print Series(dts.weekday, dts).map(Series('Mon Tue Wed Thu Fri Sat Sun'.split()))
2013-04-30 Tue
2013-05-02 Thu
2013-05-05 Sun
2013-05-06 Mon
2013-05-07 Tue
dtype: object
HTH
相關問題
- 1. php日期補償
- 2. 大熊貓假期日曆規則美國選舉日
- 3. 假期或假期日曆
- 4. 帶有過期日期的新日曆的PHP日曆
- 5. 熊貓pivot_table日期
- 6. 熊貓 - 按日期
- 7. 熊貓:按日期
- 8. 用熊貓創建交易假期日曆
- 9. 帶有標記日期的Jquery日曆
- 10. 流星延遲補償和日期()
- 11. 查找日期與大熊貓日期列的日期差異
- 12. 帶有任務日曆的PHP bugtracker(從日期到日期等)
- 13. 熊貓假日假日名稱,以數據幀
- 14. 熊貓日期時間與Julian日
- 15. 蟒蛇日曆假期
- 16. 熊貓列日期轉換
- 17. 熊貓dataframe轉換日期
- 18. 熊貓:慢日期轉換
- 19. 熊貓:有日期的列表,並DateTimeIndex
- 20. 帶日期時間的PHP日曆類
- 21. 帶日曆的日期字段Django
- 22. 我的日曆的日曆日期爲
- 23. 設置帶日曆或日期時間的日期
- 24. 重建大熊貓數據框以填補缺失的日期
- 25. 帶有日期
- 26. 將日期的熊貓列轉換爲日期
- 27. 從Google日曆導入時,D日曆日期有錯誤的日期?
- 28. 具有自動對焦和最短日期的雙日期日曆日曆
- 29. 日曆日期轉換爲行與假期與狀態更新
- 30. 熊貓到日期和星期
如果所有偏移量而不僅僅是工作日,我可以看到該功能更有用。剩下的不多,但還有幾個地方還在週六考慮一個工作日。因此,在這種情況下,排除星期日和節假日的事情是必要的。 – rhaskett
@rhaskett我在Github上爲這個問題貢獻了一些代碼。看看它是否符合你的需求。 – snth
巧妙地使用numpy。當它遇到生產時我會嘗試一下。謝謝 – rhaskett