У меня проблемы с поиском быстрого способа определить количество времени, которое каждый сотрудник в моем наборе данных ранее работал с другими сотрудниками в разных компаниях.Ниже приведен пример набора данных, который у меня есть:
![enter image description here](https://i.stack.imgur.com/ocDrM.png)
Мои данные содержат более 150 000 записей о занятости, 600 уникальных компаний и 65 000 уникальных людей.Мой метод использования вложенных циклов for для вычисления этого займет недели.Мой код использует панды и выглядит следующим образом:
for comp, comp_df in df.groupby('COMPANY_ID'):
for i in range(0,len(comp_df)):
for j in range(i+1,len(comp_df)):
compute_overlap() #function that computes time worked together using 'START_DATE' and 'END_DATE'
# append relationships to a new dataframe (e.g., "P1-P2": 5 months)
# sum all the unique relationships
Есть ли более эффективный способ?