pandas-数据聚合-分组计算
导入模块
import numpy as np
import pandas as pd
from pandas import Series,DataFrame
from numpy import nan as NA
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['Microsoft YaHei']
先创建一个DataFrame和一个Series
df1 = DataFrame(
{
'key1':list('aabba'),
'key2':'one,two,one,two,one'.split(','),
'data1':np.random.randint(0,10,5),
'data2':np.random.randint(0,10,5)
}
)
df1
s1 = df1['data1']
s1
1.Series.groupby
按照某个series 进行分组,返回一个分组后的对象
通俗来说就是将df1按照key1列分组,返回df1里data1这列也就是s1的值
s1.groupby(df1.key1)
可以用list() 转换,查看结构 .可以知道分组对象的每个值都是 分组依据和分组结果
list(s1.groupby(df1.key1))
分组对象是可以 直接 使用 聚合(统计)函数
s1.groupby(df1.key1).sum()
s1.groupby