Pandas的groupby分组
2017-11-06 本文已影响37人
一木之夏
定义DataFrame

1. 按df中某列对行数据分组
df['data1'].groupby(df['key1']).sum()

2.按列表对行数据分组
key=[1,2,1,1,2]
df['data1'].groupby(key).mean()

3.按多个列对行数据分组

4.按列索引分组


5.将有多重索引的Series转行成DataFrame
df1.unstack()

6.按类型对列数据分组
df.groupby(df.dtypes, axis=1).sum()

定义DataFrame
df = pd.DataFrame(np.random.randint(1,10,(5,5)), columns=list('abcde'), index=['Alice', 'Bob','Candy', 'Dark','Emily'])

1.对列分组
mapping = {'a': 'red', 'b':'red', 'c': 'blue', 'd':'orange', 'e': 'blue'}
grouped = df.groupby(mapping, axis=1)

2.按索引长度分组
