У меня есть DataFrame, который выглядит так:
df = pd.DataFrame({'ID':[1,1,2,2,3,4],'Name':['John Doe','Jane Doe','John Smith','Jane Smith','Jack Hill','Jill Hill']})
ID Name
0 1 John Doe
1 1 Jane Doe
2 2 John Smith
3 2 Jane Smith
4 3 Jack Hill
5 4 Jill Hill
Затем я добавил еще одну группу столбцов по идентификатору и взял уникальные значения в поле Имя:
df['Multi Name'] = df.groupby('ID')['Name'].transform('unique')
ID Name Multi Name
0 1 John Doe [John Doe, Jane Doe]
1 1 Jane Doe [John Doe, Jane Doe]
2 2 John Smith [John Smith, Jane Smith]
3 2 Jane Smith [John Smith, Jane Smith]
4 3 Jack Hill [Jack Hill]
5 4 Jill Hill [Jill Hill]
Как убрать скобки из нескольких имен?
Я пробовал:
df['Multi Name'] = df['Multi Name'].str.strip('[]')
ID Name Multi Name
0 1 John Doe NaN
1 1 Jane Doe NaN
2 2 John Smith NaN
3 2 Jane Smith NaN
4 3 Jack Hill NaN
5 4 Jill Hill NaN
Желаемый вывод:
ID Name Multi Name
0 1 John Doe John Doe, Jane Doe
1 1 Jane Doe John Doe, Jane Doe
2 2 John Smith John Smith, Jane Smith
3 2 Jane Smith John Smith, Jane Smith
4 3 Jack Hill Jack Hill
5 4 Jill Hill Jill Hill