перебирать строки в DataFrame в Pandas - PullRequest
2 голосов
/ 26 мая 2020

У меня есть Dataframe с 200 000 строками, который выглядит следующим образом:

import pandas as pd
inp = [{'guess':173, 'start_date':'2004-05-06', 'end_date':'2004-05-06'}, {'guess':173, 'start_date':'2018-07-06', 'end_date':'2018-07-05'},
      {'guess':347, 'start_date':'2011-05-30', 'end_date':'2018-10-09'}, {'guess':347, 'start_date':'2011-10-27 ', 'end_date':'2099-01-01'},
       {'guess':347, 'start_date':'2015-12-29', 'end_date':'2099-01-01'},{'guess':347, 'start_date':'2016-01-05', 'end_date':'2099-01-01'},
      {'guess':347, 'start_date':'2018-11-02', 'end_date':'2099-01-01'}]
df = pd.DataFrame(inp)
df.head()

Теперь я хочу перебрать строки этого кадра. Прежде всего, я хочу проверить, есть ли другие предположения с тем же идентификатором, в этом случае я хочу определить, сколько продуктов предположение было активным на момент покупки продукта.

Вывод what i ищу:

Вывод:

   Guess    start_date    end_date   Counter
0   1734    2004-05-06   2018-05-05     0     
1   1734    2018-07-06   2099-01-01     0   it is 0 because when he buy the 2 item, the first is deleted
2   3470    2011-05-30   2018-10-09     0   
3   3470    2011-10-27   2099-01-01     1
4   3470    2015-12-29   2099-01-01     2   
5   3470    2016-01-05   2099-01-01     3   
6   3470    2018-11-02   2099-01-01     3   it happend the same in line 1

Я пробовал использовать iterrows (), но он для него слишком велик.

...