京公网安备 11010802034615号
经营许可证编号:京B2-20210330
二分类模型中,如何应对分类自变量取值过多
这是个信息无限充裕的年代,是个数据爆炸的年代,也是数据过载的年代。大数据之大,不仅在于体量巨大,更在于结构和内容的复杂,因此如何处理好数据一直是我们工作少为人知、却也无法忽视的重点。本期,我们就以二分类模型中自变量取值过载为例,给大家讲讲应对之道~
在二分类建模过程中,难免会遇到分类自变量取值过多的情况,比如用来表示观测值地域属性的自变量,在我国即使选用省级层面的信息,最多也可达31种取值。处理分类自变量时,最常用的方法是将其拆分为若干取值为“0”和”1”的二分变量,这样就会导致模型的维度过多,自由度降低,不仅对建模样本提出了更高的要求,还增加了模型参数估计的难度和模型的训练时间。因此,今天我们基于自己的经验,在这里谈谈对这个问题的处理思路。
一、利用聚类算法进行类别合并
既然这个问题是分类变量取值过多导致的,那么,最直接的解决思路显然就是对类别进行合并。当然,合并不能是主观随意的,而应该是基于定量分析之后的结果。为了便于叙述,不妨假设某个分类型自变量X有A1,A2,…,An等取值,我们可以计算出每个类别中实际的Y=1比例。具体计算过程如下表所示:
然后就可以利用聚类分析来进行类别的合并了。第一种思路是采用系统聚类法,将A1,A2,…,An看做聚类的对象,各个类别的Y=1比例作为指标进行聚类,即有n个聚类对象,1个聚类指标。聚类结束之后,将聚为一类的类别进行合并。当然,究竟聚为几类最合适,还可以采用一些指标来辅助确定,比如SAS软件中的R-square、半偏态R-square以及伪F统计量等,都可以用来辅助确定类的个数。
第二种思路就是采用有序样品的聚类,长期关注我们公众号的小伙伴可能还记得,我们在前期的文章中曾经利用这个方法来进行数据离散化,这里我们利用这个方法进行类别的合并,处理起来也比较简单,将各个类别按照Y=1比例从小到大的顺序进行排列,再利用Fisher算法将Y=1比例相近的类别进行合并。这样做最大的好处是我们可以根据信息损失,得到最优的类别个数和相应的最优合并方法。
二、利用决策树进行类别合并
利用决策树进行类别合并时,首先需要选择一个衡量分类变量之间相关性或影响程度的指标,我们可以使用在前期的文章中曾经介绍过IV信息量或一致性比率。这种类别合并的基本步骤可以表示为:
1、将各个类别按照Y=1比例从小到大的顺序进行排列,并将所有类别视为一个组;
2、利用IV信息量(或者一致性比率),找出最优的二元分割方法,使得被选中的分组方案是所有分组方案中预测能力最强的,这样将所有类别分成了两组,不妨假设为组1和组2;
3、将组1按照上一步同样的步骤分为组11和组12,组2分为组21和组22。再利用IV信息量比较组1和组2的最优分组的预测能力大小,取预测能力最强的组进行分裂,这样将所有类别分成了三组,不妨假设为组1、组2和组3。
然后,按照第3步的做法不断分裂下去,直到分裂形成的组数达到预先设定的个数为止。如果因变量是二分变量,可以使用IV信息量或一致性比率;如果因变量的取值个数大于2,那么就可以使用一致性比率来进行预测力的判断。《SAS编程与数据挖掘商业案例》一书种提供了一份观测值为32264的数据集,其中因变量是二分变量,有一个分类自变量LOCATION有19种可能的取值,我们利用这里介绍的算法对变量LOCATION进行合并,将合并后的类别个数设定为5,下图是分裂的具体过程:
其中原始的19个变量记为B1,B2,…,B19,经过4次分裂,19个取值最后被分为5个组,圆圈里面的表示的就是这5个组里面包括的原始变量名称,每个方框下面对应的数字表示该步分裂所对应的顺序。由于采用的是自上而下的分裂算法,很显然,分裂后保留的组数越多,算法所耗费的时间也就越长。
三、WOE编码
WOE就是所谓的证据权重(weight of evidence),该方法计算出分类变量每一个类别的WOE值,这样就可以用这个WOE值组成的新变量来替代原来的分类变量。由于新变量是数值型变量,因此该方法实际是将分类变量转化为数值变量,不用再生成虚拟变量,避免了由此产生的维度过多的问题。我们用下面的表格来表示WOE值的计算过程:
注:LN表示自然对数函数。
从上表可以看出,WOE值实际上是该类别中Y=1与Y=0比例之比的自然对数。需要注意的是,该表的Y=1比例与上一张表的Y=1比例计算方式是不一样的,上一张表的Y=1比例是该类别中Y=1观测个数与该类别所有观测个数之比,而这一张表示该类别Y=1观测个数与样本中所有Y=1观测个数之比。WOE编码法在利用logistic模型建立信用评分卡时应用较多。
四、小结
比较而言,前两种类别合并的方法,虽然减少了类别个数,但是仍然需要生成若干二分变量;当使用一致性比率进行预测力判断时,第二种方法也适用于多分类模型;第三种方法将分类变量直接转化为数值型变量,模型简洁,易于操作。但是如果出现类别中Y=1或者Y=0个数为零的情况,将导致WOE值无法计算。因此,也可以将两种方法结合起来,先进行简单的类别合并,避免Y=1或者Y=0个数为零的情况,然后再进行WOE编码。
总之,数据的世界是日益复杂的,大数据尤其如此。在面对繁复的海量数据时,我们需要很多方法和经验,将数据转化成更简洁有效的信息;希望大家能从本文中得到一点启发。
CDA学员免费下载查看报告全文:2026全球数智化人才指数报告【CDA数据科学研究院】.pdf
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在Excel数据分析中,数据透视表是汇总、整理海量数据的高效工具,而公式则是实现数据二次计算、逻辑判断的核心功能。实际操作中 ...
2026-04-30Excel透视图是数据分析中不可或缺的工具,它能将透视表中的数据快速可视化,帮助我们直观捕捉数据规律、呈现分析结果。但在实际 ...
2026-04-30 很多数据分析师能熟练地计算指标、搭建标签体系,但当被问到“画像到底在解决什么问题”“画像和标签是什么关系”“画像如何 ...
2026-04-30在中介效应分析中,人口统计学变量(如年龄、性别、学历、收入、职业等)是常见的控制变量或调节变量,其处理方式直接影响分析结 ...
2026-04-29在SQL数据库实操中,日期数据的存储与显示是高频需求,而“数字日期”(如20240520、20241231、45321)是很多开发者、数据分析师 ...
2026-04-29 很多分析师在设计标签时思路清晰,但真到落地环节却面临“数据在手,不知如何转化为可用标签”的困境:或因加工方式选择不当 ...
2026-04-29在手游行业竞争日趋白热化的当下,“流量为王”早已升级为“留存为王”,而付费用户留存率更是衡量一款手游盈利能力、运营质量的 ...
2026-04-28在日常MySQL数据库运维与开发中,经常会遇到“同一台服务器上,两个不同数据库(以下简称“源库”“目标库”)的表数据需要保持 ...
2026-04-28 很多分析师每天和数据打交道,但当被问到“标签是什么”“标签和指标有什么区别”“标签体系如何设计”时,却常常答不上来。 ...
2026-04-28箱线图(Box Plot)作为一种经典的数据可视化工具,广泛应用于统计学、数据分析、科研实证等领域,核心价值在于直观呈现数据的集 ...
2026-04-27实证分析是社会科学、自然科学、经济管理等领域开展研究的核心范式,其核心逻辑是通过对多维度数据的收集、分析与解读,揭示变量 ...
2026-04-27 很多数据分析师精通Excel函数和数据透视表,但当被问到“数据从哪里来”“表和视图有什么区别”“数据库管理系统和SQL是什么 ...
2026-04-27在大数据技术飞速迭代、数字营销竞争日趋激烈的今天,“精准触达、高效转化、成本可控”已成为企业营销的核心诉求。传统广告投放 ...
2026-04-24在游戏行业竞争白热化的当下,用户流失已成为制约游戏生命周期、影响营收增长的核心痛点。据行业报告显示,2024年移动游戏平均次 ...
2026-04-24 很多业务负责人开会常说“我们要数据驱动”,最后却变成“看哪张报表数据多就用哪个”,往往因为缺乏一套结构性的方法去搭建 ...
2026-04-24在Power BI数据可视化分析中,切片器是连接用户与数据的核心交互工具,其核心价值在于帮助使用者快速筛选目标数据、聚焦分析重点 ...
2026-04-23以数为据,以析促优——数据分析结果指导临床技术改进的实践路径 临床技术是医疗服务的核心载体,其水平直接决定患者诊疗效果、 ...
2026-04-23很多数据分析师每天盯着GMV、DAU、转化率,但当被问到“哪些指标是所有企业都需要的”“哪些指标是因行业而异的”“北极星指标和 ...
2026-04-23在数字化时代,客户每一次点击、浏览、下单、咨询等行为,都在传递其潜在需求与决策倾向——这些按时间顺序串联的行为轨迹,构成 ...
2026-04-22数据是数据分析、建模与业务决策的核心基石,而“数据清洗”作为数据预处理的核心环节,是打通数据从“原始杂乱”到“干净可用” ...
2026-04-22