Если у меня есть такой набор данных:
id person_name salary
0 [alexander, william, smith] 45000
1 [smith, robert, gates] 65000
2 [bob, alexander] 56000
3 [robert, william] 80000
4 [alexander, gates] 70000
Если мы сложим столбец зарплаты, то получим 316000
Я действительно хочу знать, сколько человек, который назвал «александр, кузнец и т. Д.» (В отдельности), зарабатывает в зарплате, если мы суммируем все зарплаты из его имени для разделения в этом наборе данных (который содержит такое же строковое значение).
выход:
group sum_salary
alexander 171000 #sum from id 0 + 2 + 4 (which contain 'alexander')
william 125000 #sum from id 0 + 3
smith 110000 #sum from id 0 + 1
robert 145000 #sum from id 1 + 3
gates 135000 #sum from id 1 + 4
bob 56000 #sum from id 2
как мы видим, сумма столбцов sum_salary не совпадает с исходным набором данных. все, потому что функция требует двойного счета.
Я думал, что это похоже на число строк, но меня смущает то, как мы используем функцию агрегирования. Я попытался создать новый список значений в столбцах person_name, а затем застрял.
Любая помощь приветствуется, большое спасибо