python里的DataFrame.groupy的as_index=True是什么意思?

as_index=False理解没有问题,如果设置为as_index=True,有什么含义?
官方的解释:
http://pandas.pydata.org/pand...

as_index : boolean, default True
For aggregated output, return object with group labels as the index. Only relevant for DataFrame input. as_index=False is effectively “SQL-style” grouped output
“effectively “SQL-style” grouped output”这句很费解

阅读 12.4k
1 个回答

在 as_index 为 True 时,可以直接通过键值的名字索引(类似字典),下面代码中注释掉的部分会报错:

import pandas as pd
df = pd.DataFrame(data={'books':['bk1','bk1','bk1','bk2','bk2','bk3'], 'price': 
[12,12,12,15,15,17]})

df0 = df.groupby('books', as_index=True).sum()
print(df0.loc['bk1'])
#print(df0.loc[0])
print('..........................................')
df1 = df.groupby('books', as_index=False).sum()
#print(df1.loc['bk1'])
print(df1.loc[df1.books=='bk1'])
print('..........................................')
print(df1.loc[0])

看这里what is as_index in groupby in pandas
我的理解,这句话的意思大概的意思是:只适用于在as_index为False时的输出为有效的“SQL样式”的group输出的情况。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏