在数据建模过程中,尤其是通过线性回归、逻辑回归等传统机器学习算法进行模型训练之前,往往需要对样本数据进行清洗,其中缺失值处理是一种常用方法 。根据特征的类别属性与缺失特点,采用合适的方法进行缺失处理,可以有效提升模型拟合的效果,甚至在某些场景下,缺失值处理是作为模型拟合样本的前提步骤 。
对于缺失值的处理方式,从难易程度可以分为“简单”和“复杂”两个方面,“简单”主要是指根据常用的统计指标进行缺失值填充,例如平均值、最大值、最小值、众数、中位数等;“复杂”主要是结合相关算法进行处理,例如极大似然估计、贝叶斯估计、决策树模型等,具体使用哪一种方法都是需要根据样本数据情况而定,但在实际业务中,经常采用的是“简单”方式,即采用平均值、众数等指标进行填充 。
【聚类、缺失处理、特征分析模型几个重要处理过程 聚类分析模型的优缺点】 1、原理逻辑描述
当采用常规方法实现缺失值的处理后,虽然达到了关于数据清洗的需求,但是在很多场景下对数据样本的实际分布会产生较大偏差 。现举个例子进行说明,样本数据如图1所示,共包含10个样本(ID01~ID10),work_type是指工作属性(1代表有工作,0代表无工作),social_security是指社保金额(元) 。
文章插图
编辑切换为居中
添加图片注释,不超过 140 字(可选)
图1 缺失值处理前
对于样例1字段social_security的缺失情况,假设采用平均值进行填充,若直接对字段全量平均值处理,则ID02与ID09的填充结果如下所示:
文章插图
编辑切换为居中
添加图片注释,不超过 140 字(可选)
图2 缺失值处理后1
针对缺失值处理结果(图2),对于ID02用户的social_security=4000,但这里要注意到,该用户特征work_type(是否有工作)为0,说明用户是无工作的,那social_security(社保金额)的结果显然是不合理的,正常情况应为0才准确 。在这种情况下,为了更符合实际业务理解,应对用户群体进行分类(聚类思想),即将用户分为有无工作2个类别(work_type=0/1),然后根据不同群体的平均值进行填充,实现结果如图3所示 。
文章插图
编辑切换为居中
添加图片注释,不超过 140 字(可选)
图3 缺失值处理后2
从图3最终的缺失值处理结果可以直观看出,对于样本ID02用户(有工作)的social_security(社保金额)为5333,而样本ID09用户(无工作)的social_security(社保金额)为0,这个结果显然是更符合实际情况 。同样是采用平均值填充,但通过特征聚类后的处理方式在实际业务中更为合理 。
2、案例实操介绍
前边的举例描述中,特征聚类的思想仅仅是从单个字段的业务含义直接进行分类判断的,在实际工作场景中,样本数据往往会包含多个特征,而且通过业务经验是无法区分类别的,因此必然需要借助于相关聚类算法进行实现 。常用的聚类算法包括K-means、DBSCAN等,都可以有效划分样本的类别属性 。下面我们结合一个具体场景案例,并采用基于密度的聚类算法DBSCAN,给大家详细介绍下特征聚类后的缺失值处理过程 。
(1)样本数据
现有一份样本数据,包含2000条样本和5个特征,各字段的标签含义分别为客户订单(主键)、年龄、月收入、信用等级、消费等级,取数据集前10条样本具体如图4所示 。
推荐阅读
- 谁能科普一下饱和脂肪酸和不饱和脂肪酸
- 哪个牌子的番茄酱好吃
- 被称为“报喜鸟”的喜鹊,为何现在却成为部分农民最讨厌的鸟类
- oppo手机的三种录屏方法 旧版oppo手机怎么录屏
- 江西庐山怎么样 江西省庐山市怎么样
- 大熊猫的故事儿童 大熊猫有什么故事
- 软件测试中的性能测试是什么
- 花季美少女潘甜甜个人资料简介 潘甜甜真名叫什么
- 大棚西葫芦冬季高产技术 早春大棚西葫芦种植技术要点是什么