Python中的分布分析cut+grou
根据分析目的,将数据(定量数据)进行等距或者不等距的分组,
进行研究各组分布规律的一种分析方法。
import numpy
import pandas
data = pandas.read_csv(
'C:/Users/ZL/Desktop/python/5.3/data.csv'
)
aggResult = data.groupby(
by=['年龄']
)['年龄'].agg({
'人数': numpy.size
})
data.年龄.hist()
bins = [
min(data.年龄)-1, 20, 30, 40, max(data.年龄)+1
]
labels = [
'20岁以及以下', '21岁到30岁', '31岁到40岁', '41岁以上'
]
data['年龄分层'] = pandas.cut(
data.年龄,
bins,
labels=labels
)
aggResult = data.groupby(
by=['年龄分层']
)['年龄'].agg({
'人数': numpy.size
})
pAggResult = round(
aggResult/aggResult.sum(),
2
)*100
pAggResult['人数'].map('{:,.2f}%'.fORMat)
先用cut函数确定好分层,再用groupby函数实现分布分析。
相关文章