Как мне сгруппировать два столбца временных интервалов в различимые месяцы?

#python #python-3.x #pandas #dataframe #time

#python #python-3.x #панды #фрейм данных #время

Вопрос:

У меня есть набор данных о рынке жилья, классифицированный по округам США, показывающий такие столбцы, как total_homes_sold. Я пытаюсь показать сравнение между продажами жилья в годовом исчислении (например, январь 2020 против Январь 2019) и по округам (например, Абердин, март 2020 против Саффолк, март 2020). Однако не уверен, как группировать даты, поскольку они отсортированы не по месяцам (январь, февраль, март и т.д.), А по 4-недельным интервалам: period_begin и period_end.

Интервалы между годами различаются. period_begin для Абердина (около января) на 2019 год может составлять от 1/7 до 2/3, но от 1/6 до 2/2 для 2020 года (изображение показано ниже).

Я попытался использовать count (код ниже), чтобы обозначить каждый 4-недельный период как число (показано ниже), думая, что я мог бы сравнить Aberdeen 2017-1 с Aberdeen 2020-1 (1 кодируется как первый временной интервал), но понял, что некоторые годы для некоторых регионов имеют более 4-недельных периодов в году, чем другие (в 2017 году 13, тогда как в 2018 году 14).

 *df['count'] = df.groupby((everyfourth['region_name'] != df['region_name'].shift(1)).cumsum()).cumcount() 1*
  

Есть идеи о том, какой код я мог бы использовать, чтобы точно классифицировать эти два столбца по месячным периодам?

Фрагмент набора данных здесь

Дайте мне знать, если у вас возникнут какие-либо вопросы. Не уверен, что я понял смысл! Спасибо.