Панды: генерировать ежегодное сравнение во временных рядах - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть данные временного ряда с идентификаторами, датами, прогнозными значениями и фактическими значениями.Пример данных ниже.

Я пытаюсь произвести ежегодные сравнения для этих квартальных данных.В частности, я пытаюсь написать функцию, которая группирует по имени и дате и находит результат за 1 год до этого (если эти данные доступны).Затем я бы использовал это для создания дополнительных столбцов.Пример данных, которые я хочу сгенерировать, показан в трех крайних правых столбцах для первой строки в приведенном ниже примере.В этой строке я нахожу точку данных Jack от ближайшей к 1y до 2018-08-30, и она возвращает соответствующее значение 90.

Есть ли хороший способ в Python найти точку 1y ago (или ближайший к 1y, так как даты не идеально выровнены), а затем вернуть заданное значение?Кроме того, я понимаю, что хотел бы учитывать близость совпадений - другими словами, не должно быть значений, возвращаемых / генерируемых для имени «Пит» ниже, поскольку нет данных за 1 год до 7/2018.

Я не знаком с такими преобразованиями временных рядов и буду очень признателен за помощь.

Спасибо!

Name    Date    Predicted   Actual  Actual 1y Prior Predicted y/y   Actual y/y
Jack    2018-08-30  60  22  91  -34.1%  -75.8%
Jack    2018-06-01  60  22          
Jack    2018-03-07  66  77          
Jack    2017-11-17  29  17          
Jack    2017-08-24  91  91          
Jack    2017-05-25  87  33          
Jack    2017-03-02  75  10          
Jack    2016-11-18  33  27          
Jack    2016-08-30  76  66          
Jack    2016-05-26  98  69          
Jack    2016-03-02  59  23          
Jack    2015-11-20  76  37          
Jack    2015-08-26  76  73          
Jack    2015-05-28  9   2           
Jack    2015-03-04  12  75          
Jill    2018-08-14  31  84          
Jill    2018-05-22  58  5           
Jill    2018-02-21  38  78          
Jill    2017-11-14  11  65          
Jill    2017-08-15  27  97          
Jill    2017-05-24  46  19          
Jill    2017-02-21  92  57          
Jill    2016-11-15  41  23          
Jill    2016-08-16  64  4           
Jill    2016-05-19  4   17          
Jill    2016-02-11  55  55          
Jill    2015-11-12  53  23          
Jill    2015-08-13  58  94          
Jill    2015-05-21  19  74          
Pete    2018-07-27  68  23          
Pete    2018-04-27  85  28          
Pete    2018-02-02  98  43          
Pete    2017-10-27  17  51      
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...