Как выбрать самый ранний номер недели NRF из набора диапазонов дат в python? - PullRequest
0 голосов
/ 29 декабря 2011

У меня есть список из 104 последовательных недель.Номера недель взяты из календаря Национального фонда розничной торговли.Таким образом, неделя 1 в основном будет первой неделей февраля.

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

Когда диапазоны находятся в середине года, это просто, я просто выбираю самое раннее начало и последний конец.

Пример:
Диапазон 1: 2010-04-09 (неделя 10 NRF) - 2010-07-16 (неделя NRF 24)
Диапазон 2: 2011-04-01 (9 неделя NRF) - 2011-06-24 (неделя 21 NRF)
Я выберу начало 9, конец 24. Просто простая функция min () или max ().

Когда диапазоны начинаются / заканчиваются вокругначало / конец года, это становится более сложным.
Пример:
Диапазон 1: 2010-02-12 (неделя 2 NRF) - 2010-05-14 (15 неделя NRF).
Диапазон 2: 2011-01-28 (неделя 52 NRF) - 2011-04-29 (неделя 13 NRF).
Мне нужно выбрать начало 52, конец 15. min () больше не работает для начала.

Или, что еще хуже, если недели - 1 и 47, мне нужно выбрать 47.

Я бы хотел найти способ выбрать лучшее (самое раннее или самое позднее) в обеих ситуациях.Я не нахожу прямой подход к этому.Кто-нибудь сталкивался с этой проблемой раньше или может предложить решение?

Я ценю любую помощь, которую вы можете оказать.

Спасибо.

1 Ответ

0 голосов
/ 29 декабря 2011

Мне кажется, что вы просто хотите игнорировать год в своей функции сравнения (чтобы найти минимальные / максимальные даты).Поскольку ваш набор данных невелик, почему бы просто не выполнить итерацию по всем неделям и выполнить сравнение на основе только месяца и даты?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...