У меня есть этот фрейм данных ниже:
df=pd.DataFrame({'cnpj':[410000132,410000132,4830624000197,4830624000197,4830624000197],'Nome Pessoa':['EUGENIO LUPORINI NETO','JUAN MATIAS SERAGOPIAN','EUGENIO LUPORINI NETO','SIMONE FANKHAUSER','ALEX SOUZA']})
print(df)
cnpj Nome Pessoa
0 410000132 EUGENIO LUPORINI NETO
1 410000132 JUAN MATIAS SERAGOPIAN
2 4830624000197 EUGENIO LUPORINI NETO
3 4830624000197 SIMONE FANKHAUSER
4 4830624000197 ALEX SOUZA
Каждый cnpj
- это компания. Каждый Nome Pessoa
- это человек. Я хочу перечислить для каждого Nome Pessoa
, в котором появляются другие люди с тем же cnpj
, что и он (желательно без дубликатов). Другими словами, я буду перечислять, как люди связаны, используя cnpj
в качестве ключа, таким образом, что df выглядит так (или, по крайней мере, близко к нему):
cnpj Nome Pessoa Relations
0 410000132 EUGENIO LUPORINI NETO ['JUAN MATIAS SERAGOPIAN','SIMONE FANKHAUSER','ALEX SOUZA']
1 410000132 JUAN MATIAS SERAGOPIAN ['EUGENIO LUPORINI NETO']
2 4830624000197 EUGENIO LUPORINI NETO ['JUAN MATIAS SERAGOPIAN','SIMONE FANKHAUSER','ALEX SOUZA']
3 4830624000197 SIMONE FANKHAUSER ['EUGENIO LUPORINI NETO','ALEX SOUZA']
4 4830624000197 ALEX SOUZA ['EUGENIO LUPORINI NETO','SIMONE FANKHAUSER']
Например, df['Relations'][0] = ['JUAN MATIAS SERAGOPIAN','SIMONE FANKHAUSER','ALEX SOUZA']
так, потому что JUAN MATIAS SERAGOPIAN появляется в том же cnpj, что и EUGENIO LUPORINI NETO (410000132), а SIMONE FANKHAUSER и ALEX SOUZA появляются в другом cnpj вместе с EUGENIO (4830624000197)
Я полагаю, это может быть что-то но не знаю, как этого добиться.