我有一个这样的数据框:
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
所以我希望任何系列方法都能奏效。有任何想法吗?