Как рассчитать новую переменную на основе многомерного кадра данных панд? - PullRequest
0 голосов
/ 01 октября 2019

Мой фрейм данных представляет данные "несбалансированной панели" в длинном формате с большим количеством периодов и тысячами объектов. В приведенном ниже примере есть один объект за несколько периодов времени.

      period    object              
1 2013-01-31   object 1         
2 2013-02-28   object 1       
3 2013-04-30   object 1      
4 2013-05-31   object 1       
5 2013-06-30   object 1 

Необходимо определить новый столбец «введите период»:

      period    object    enter period          
1 2013-01-31   object 1   2013-01-31      
2 2013-02-28   object 1   2013-01-31    
3 2013-04-30   object 1   2013-04-30   
4 2013-05-31   object 1   2013-04-30    
5 2013-06-30   object 1   2013-04-30

Логика такова:

если объект находится в базе данных без прерываний, то период ввода = первый период, доступный для этого объекта.

else - Каждый раз, когда для объекта имеются промежутки между периодами, введите period = первый период после пробела.

В Excel формула выглядит следующим образом (A- «period», B- »object ", C-" enter period "):

C2=IF(AND(B2=B1;IFERROR(MONTH(A2)+(YEAR(A2)-2013)*12-MONTH(A1)-(YEAR(A1)-2013)*12;0)=1);C1;A2)

Как определить такую ​​функцию в пандах Python и как применить ее для каждого объекта в столбце объекта? Как ссылаться на каждый объект в столбце? Как ввести измерение времени в функцию?

Я новичок в Python, и любая помощь будет высоко ценится.

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