从group by获取列描述

时间:2017-03-03 12:40:42

标签: python pandas bigdata

我很感兴趣的是通过Pandas的数据集从组中获取数据。 数据是指不同人士休假。

此外,所访问的地点数量存储在该城市。

       City     Name   Places
0   Seattle    Alice   10
1   Seattle      Bob   11
2  Portland  Mallory   7
3   Seattle  Mallory   5
4   Memphis      Bob   6
5  Portland  Mallory   9
6   Memphis    Alice   1
7   Memphis    Alice   20
8   Seattle    Alice   14
9   Seattle      Bob   10

我想从DataFrame.describe()

获取数据

新数据框应如下所示。

Name    City   Count   Mean   Std   Min   25%   50%   75%   Max
Alice   Seattle    2   X      X     X     X     X     X     X
Alice   Memphis    2   X      X     X     X     X     X     X
Bob     Seattle    2   X      X     X     X     X     X     X
Bob     Memphis    1   X      X     X     X     X     X     X
Mallory Portland   2   X      X     X     X     X     X     X
Mallory Seattle    1   X      X     X     X     X     X     X

谢谢!

1 个答案:

答案 0 :(得分:2)

我认为您需要groupbydescribe,最后重塑unstack

df = df.groupby(['Name','City'])['Places'].describe().unstack().reset_index()
print (df)
      Name      City  count  mean        std   min    25%   50%    75%   max
0    Alice   Memphis    2.0  10.5  13.435029   1.0   5.75  10.5  15.25  20.0
1    Alice   Seattle    2.0  12.0   2.828427  10.0  11.00  12.0  13.00  14.0
2      Bob   Memphis    1.0   6.0        NaN   6.0   6.00   6.0   6.00   6.0
3      Bob   Seattle    2.0  10.5   0.707107  10.0  10.25  10.5  10.75  11.0
4  Mallory  Portland    2.0   8.0   1.414214   7.0   7.50   8.0   8.50   9.0
5  Mallory   Seattle    1.0   5.0        NaN   5.0   5.00   5.0   5.00   5.0