相关疑难解决方法(0)

Pandas按组聚合和列排序

给出以下数据帧

In [31]: rand = np.random.RandomState(1)
         df = pd.DataFrame({'A': ['foo', 'bar', 'baz'] * 2,
                            'B': rand.randn(6),
                            'C': rand.rand(6) > .5})

In [32]: df
Out[32]:      A         B      C
         0  foo  1.624345  False
         1  bar -0.611756   True
         2  baz -0.528172  False
         3  foo -1.072969   True
         4  bar  0.865408  False
         5  baz -2.301539   True 
Run Code Online (Sandbox Code Playgroud)

我想在group(A)中按聚合的总和B,然后按C(未聚合)中的值对其进行排序.所以基本上得到A组的顺序

In [28]: df.groupby('A').sum().sort('B')
Out[28]:             B  C
         A               
         baz -2.829710  1
         bar  0.253651  1
         foo  0.551377  1
Run Code Online (Sandbox Code Playgroud)

然后通过True/False,这样它最终看起来像这样:

In [30]: df.ix[[5, …
Run Code Online (Sandbox Code Playgroud)

python sorting group-by dataframe pandas

54
推荐指数
3
解决办法
9万
查看次数

标签 统计

dataframe ×1

group-by ×1

pandas ×1

python ×1

sorting ×1