在數據分析中,咱們有時須要將數據拆分,在每個特定的組裏進行運算python
a = pd.read_csv('601318.csv') a
數據以下:函數
df.groupby('key1').mean()
分組:拆分數據爲若干組spa
聚合:組內應用某個函數3d
df.groupby('key1').mean()
df.groupby(['key1','key2']).mean()
df.groupby(len).mean()
df.groupby(lambda x:len(x)).mean()
df.groupby(lambda x:'zheng' if df.loc[x,'data2']>0 else 'fu').mean()
df.groupby('key1').get_group('b')
分組以後須要聚合函數來應用到每一組中code
內置聚合函數blog
一、自定義聚合函數get
df.groupby('key1').agg(lambda x:x.max())
二、多個聚合函數數據分析
三、不一樣列應用不一樣聚合函數class
df.groupby('key1').agg({'data1':'min','data2':'max'})
df2 = df.copy() df3 = df.copy()
pd.concat([df,df2,df3])
pd.concat([df,df2,df3],keys=list('abc'))
pd.concat([df,df2,df3],ignore_index=True)
pd.concat([df,df2,df3],axis=1)
pd.concat([df,df2,df3],axis=1,ignore_index=True)
pd.merge(df,df2)
pd.merge(df,df2,on='key1')
pd.merge(df,df2)
pd.merge(df,df2,on=['key1','key2'])