答案 0 :(得分:3)
如果使用:
[data2]
您获得Series
Multiindex
。
如果使用子集
[[data2]]
您获得DataFrame
Multiindex
。
如果使用:
df.groupby(['key1','key2'], as_index=False)['data2'].mean()
如果DataFrame
列没有3
,则会获得Multiindex
。
如果使用其他形式,可能会更清楚:
import pandas as pd
df = pd.DataFrame({'key1':[1,2,2,1,2,2],
'key2':[4,4,4,4,5,5],
'data2':[7,8,9,1,3,5],
'D':[1,3,5,7,9,5]})
print (df)
D data2 key1 key2
0 1 7 1 4
1 3 8 2 4
2 5 9 2 4
3 7 1 1 4
4 9 3 2 5
5 5 5 2 5
print (df['data2'].groupby([df.key1,df.key2]).mean())
key1 key2
1 4 4.0
2 4 8.5
5 4.0
Name: data2, dtype: float64
print (df[['data2']].groupby([df.key1,df.key2]).mean())
data2
key1 key2
1 4 4.0
2 4 8.5
5 4.0