Есть ли способ в Python отметить китайские праздники в Pandas временных рядах? - PullRequest
0 голосов
/ 13 апреля 2020

Я хотел бы отметить дни в своих временных рядах (данные из Китая) в дополнительном столбце как праздничные (логическое значение true) и не праздничные (логическое значение false).

Я новичок в этой топи c и сейчас я пытаюсь понять, как решить эту проблему.

У меня есть следующие дни на 2020 год в качестве официальных китайских праздников:

Китайские праздники 2020

Насколько я знаю, нет календаря вне поле для фарфора, поэтому мне нужно будет создать собственный каландар следующим образом:

from pandas.tseries.holiday import Holiday,AbstractHolidayCalendar
    class ChineseHolidays(AbstractHolidayCalendar):
    rules = [Holiday('Chinese New Year', month=1, day=25),
             'Question: How to add more than one day?',
             etc,
            ...]

    cal = ChineseHolidays()

Следующими шагами будет создание столбцов Праздники следующим образом:

holidays = cal.holidays(start=X['timestamp'].min(), end = X['timestamp'].max())

X.assign(Holidays=X['timestamp'].isin(cal.holidays()).astype(int))

Мои вопросы Вот:

1) Является ли это вообще правильным подходом?

2) Как определить строку «Праздник» («Китайский Новый год», месяц = ​​1, день = 25) что дни начинаются с 24 января и заканчиваются 30 января? Есть ли способ определить выходные вместо определения только одного дня?

Спасибо за вашу помощь.

Best,

B.

...