我如何按索引分组并对每列进行均值分析

时间:2016-05-14 14:09:16

标签: python pandas dataframe

我关注df

              Blades & Razors & Foam Diaper Empty Fem Care HairCare Irrelevant Laundry Oral Care Others Personal Cleaning Care Skin Care
retailer                                                                                                                                
RTM                              158    486   193     2755     3490       1458     889      2921     69                   1543       645
RTM                               39      0    28     2305       80         27       0         0      0                   1207       414
RTM                               98    276   121     1090     2359        717     561       911    293                   1286       528
RTM                              107    484    54     2136     2777        151      80      2191      7                   1096       673
RTM                              156    465   254     2972     2802        763     867      1065      8                   2777       728
RTM                              126    326   142     2126     2035        581     575       753     45                   1768       292
RTM                                0      0   181     1816     1455        598     579         0      2                    749       451
RTM                               86    374   308     2197     2075        576     698       693     26                   1398       212
RTM                              132     61   153     2094     1508        180     590       785     66                   1519       486
RTM                               90    303     8        0        0         18       0        60      0                    358         0
RTM                                0     14     6      190      198         21     131        75     18                    171         0

我希望在我的groupby()上设置index,然后在每个column上获得该组的平均值?知道怎么做到这一点吗?

1 个答案:

答案 0 :(得分:0)

要对索引进行分组,请使用:

df.groupby(level=0).mean()

df.groupby(df.index).mean()

样品:

df = pd.DataFrame(data=np.random.random((10, 5)), columns=list('CDEFG'), index=list('AB')*5)
df.head()

          C         D         E         F         G
A  0.230504  0.830818  0.560533  0.266903  0.745196
B  0.996806  0.861006  0.257780  0.258976  0.738617
A  0.409191  0.688814  0.214247  0.309678  0.565571
B  0.805192  0.940919  0.707562  0.772370  0.122562
A  0.596964  0.935662  0.493612  0.108362  0.673538

以上任一产量:

          C         D         E         F         G
A  0.328301  0.560188  0.632549  0.491101  0.343343
B  0.405996  0.490331  0.540921  0.394136  0.466504
          C         D         E         F         G
A  0.328301  0.560188  0.632549  0.491101  0.343343
B  0.405996  0.490331  0.540921  0.394136  0.466504