数据三等分离散python_【统计学】三种方法进行连续属性离散化处理

最近在读《python数据分析与挖掘实战(张良均等)》这本书,发现里面有很多很不错的数据分析方法,但是在重新敲代码的过程中,发现原书也有一些错误,不过正好让我重新熟悉了pandas和matplotlib以及numpy的操作。数据的预处理是数据分析过程中非常重要的一部分,具体结构如图所示:

ccb2c380ada8383718ffeb3c2b5cf294.png

前面两篇文章梳理了用箱线图标注异常值用拉格朗日插值法进行空白值填充的方法:

zakki:箱线图异变标注​zhuanlan.zhihu.com
b44a4cd351f74b5158e031af3b8a8097.png
zakki:拉格朗日插值法的一种python实现方式​zhuanlan.zhihu.com

其实在数据清洗和预处理过程中,有时我们需要适当地对数据集进行变换。关于数据规范化,我们后面再说,本篇文章主要谈论对数据集的连续属进行离散化

一、概念

某些分类算法,要求我们对连续性的属性进行分类处理,离散化的过程主要包括确定分类的个数,并将数据集映射到这些分类中,这里涉及三种分类方法:

1)等宽法

类似于制作频数分布图,将属性分布值分为几个等分的分布区间;

2)等频法

将相同数量的记录放入每个区间;

3)基于聚类的分析方法

将属性按照K-means算法进行聚类,然后根据聚类的分类,将同一聚类的记录合并到同一组内。

下面针对:肝气郁结证型系数数据集进行三种离散化的python实现,数据集下载地址:

https://github.com/zakkitao/database/blob/master/discretization_data.xls​github.com

二、代码实现

1)导入数据集以及各种需要的库

import 

2)等宽离散法

data 

3)等频离散法

w 

4)k-means分组

from 

5)定义画图函数并生成图像

def 

如图:按照顺序排列的三图

52a98405cc7270baf5e211d93a2a2ef6.png

bca9ae3e1b6d571f001b76a4d13f3a3e.png

c26353317e07acfc52bce7e6d9117a2a.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值