I saw this question, grouping rows in list in pandas groupby
but I have more than two columns that I want to apply list
.
input:
df(pd.DataFrame)
| index | c1 | c2 | c3 |
|-------|----|----|----|
| 1 | A | 6 | 1 |
| 2 | A | 5 | 2 |
| 3 | B | 4 | 3 |
| 4 | B | 3 | 4 |
| 5 | B | 2 | 5 |
| 6 | C | 1 | 6 |
expected output:
| c1 | c2 | c3 |
|----|---------|---------|
| A | [6,5] | [1,2] |
| B | [4,3,2] | [3,4,5] |
| C | [1] | [6] |
I also tryed
df.groupby('c1').apply(list)
but it results as the following.
| c1 | |
|----|-------------|
| A | ['c2','c3'] |
| B | ['c2','c3'] |
| C | ['c2','c3'] |
How do I do?
Thanks.