'How to split aggregated list into multiple columns in pandas
I want to create separate columns for each item in the 'name' lists for each row in this pandas dataframe. The 'name' lists have between 1-10 items, and I just want the column heads to be "1", "2", "3", etc.
out = dataframe.groupby(by=['location'], as_index=False).agg({'people':'sum', 'name':list})
Is there a way to split the aggregated list like this?
Solution 1:[1]
This can be done by two steps , cumcount with pivot
out1 = dataframe.groupby('location').agg({'people':'sum'})
out2 = dataframe.assign(key = dataframe.groupby('location').cumcount()).pivot('location', 'key', 'name')
out = out1.join(out2).reset_index()
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | BENY |


