目录
1.数据分组
pandas提供了groupby方法根据某个或几个字段对数据进行分组。
1.1 按列名分组
import numpy as np
df = pd.DataFrame({'key1' : ['a', 'a', 'b', 'b', 'a'],
'key2' : ['yes', 'no', 'yes', 'yes', 'no'],
'data1' : np.random.randn(5),
'data2' : np.random.randn(5)})
print(df)
groupk1 = df.groupby('key2').mean()
groupk1
#-------------------------------------------------
key1 key2 data1 data2
0 a yes 0.459241 0.178359
1 a no 0.707976 -0.147157
2 b yes 0.604565 -0.723689
3 b yes 1.524165 -0.332724
4 a no 1.022692 -0.303317
data1 data2
key2
no 0.865334 -0.225237
yes 0.862657 -0.292685
1.2按列表或元组分组
wlist = ['w','w','y','w','y']
df.groupby(wlist).sum()
#------------------------------
data1 data2
w 2.691381 -0.301521
y 1.627258 -1.027006
1.3 按字典分组
df = pd.DataFrame(np.random.normal(size = (6,5)),index = ['a','b','c','A','B','c'])
print("数据为:\n",df)
wdict = {'a':'one','A':'one','b':'two','B':'two','c':'three'}
print("分组汇总后的结果为:\n",df.groupby(wdict).sum())
#----------------------------------------------------------------------
数据为:
0 1 2 3 4
a 1.083443 1.031824 0.460074 0.24346

本文详细介绍了如何使用Pandas对数据集进行按列、列表、字典和函数分组,并演示了agg和apply方法进行数据聚合,以及数据透视表和交叉表的创建。涵盖了基础到进阶的数据处理技巧。

2677

被折叠的 条评论
为什么被折叠?



