У меня есть dataframe, как это:
A B C
0 1 0.749065 This
1 2 0.301084 is
2 3 0.463468 a
3 4 0.643961 random
4 1 0.866521 string
5 2 0.120737 !
Вызов
In [10]: print df.groupby("A")["B"].sum()
вернет
A
1 1.615586
2 0.421821
3 0.463468
4 0.643961
Теперь я хотел бы сделать "то же самое" для столбца "C". Поскольку этот столбец содержит строки, sum() не работает (хотя вы можете подумать, что он будет конкатенировать строки). Мне бы хотелось увидеть список или набор строк для каждой группы, т.е.
A
1 {This, string}
2 {is, !}
3 {a}
4 {random}
Я пытался найти способы сделать это.
Series.unique() (http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.unique.html) не работает, хотя
df.groupby("A")["B"]
является
pandas.core.groupby.SeriesGroupBy object
поэтому я надеялся, что любой метод серии будет работать. Любые идеи?