Pandas仅使用该键的一部分访问组touple键的长度

时间:2015-09-08 16:46:38

标签: python pandas group-by dataframe

我有一个DataFrameGroupBy,其密钥的结构为Hour, ID

我试图从每小时获得每个组的大小。

运行mygroup.size()会给我输出:

   ID
0  41           3
   55          10
   56           1
   60           7
   65           1
...
23  2218         5
    2222         9
    2223         5
    2225         2

我希望能够做的是过滤此列表,以便我可以根据密钥的Hour部分(0-23)获取每个组中的总数

1 个答案:

答案 0 :(得分:1)

致电count并传递level=0,例如:

In [21]:
df = pd.DataFrame({'a':[0,0,1,1,1,1],'b':[1,2,3,12,3,4],'c':np.arange(6)})
df

Out[21]:
   a   b  c
0  0   1  0
1  0   2  1
2  1   3  2
3  1  12  3
4  1   3  4
5  1   4  5

In [22]:    
gp = df.groupby(['a','b'])
gp.size()

Out[22]:
a  b 
0  1     1
   2     1
1  3     2
   4     1
   12    1
dtype: int64

In [23]:
gp.size().count(level=0)

Out[23]:
a
0    2
1    3
dtype: int64