python笔记26:数据分析之分布分析

# -*- coding: utf-8 -*-
#1、概念:分布分析,是指根据分析目的,将数据(定量数据)进行等距或者不等距的分组(定量分组),进行研究各组分布规律的一种分析方法。
#常用于用户的消费分布、收入分布、年龄分布等

import numpy
import pandas

data = pandas.read_csv("D:/workspaces/python/pythonStudy/26.csv")

#26.csv包括列:用户ID,注册日期,身份证号码,性别,出生日期,年龄。下载地址:https://pan.baidu.com/s/1iT3EXsE0gIKKDYHeLKRyWg

aggResult = data.groupby(by=['年龄'])['年龄'].agg({'人数':numpy.size})

#可以看到分组已经成功,但是结果不直观,从结果反映不出每个年龄的人数

#进行数值分段处理:
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(),3)*100

pAggResult['人数'].map('{:,.2f}%'.format)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值