Cómo aplicar la lista a un grupo de pandas

Vi esta pregunta, agrupando filas en la lista en pandas groupby

pero tengo más de dos columnas que quiero aplicar list .

entrada:

 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 | 

Rendimiento esperado:

 | c1 | c2 | c3 | |----|---------|---------| | A | [6,5] | [1,2] | | B | [4,3,2] | [3,4,5] | | C | [1] | [6] | 

Yo tambien traté

 df.groupby('c1').apply(list) 

pero resulta como el siguiente.

 | c1 | | |----|-------------| | A | ['c2','c3'] | | B | ['c2','c3'] | | C | ['c2','c3'] | 

¿Como lo hago?

Gracias.

Es bien sabido problema con apply con list

 df.groupby('c1').agg(lambda x : list(x)) Out[15]: c2 c3 c1 A [6, 5] [1, 2] B [4, 3, 2] [3, 4, 5] C [1] [6]