Python超实用小技巧:分类变量转化为哑变量(附哑变量详解)

哑变量(DummyVariable)在处理多分类变量时起到关键作用,通过将其转化为0、1变量,确保模型对每个分类的影响独立,从而提高模型预测精度。例如,将职业因素的多个类别转化为0、1列,或对年龄等连续变量进行离散化处理,以增强模型对分类变量的理解和预测能力。
摘要由CSDN通过智能技术生成

代码示例

 features = ["Pclass", "Sex", "SibSp", "Parch"]
 # 筛选出分类变量用来建模
 X = pd.get_dummies(train[features])
 # 把分类变量转化为哑变量

哑变量详解

  • 定义:哑变量(DummyVariable),也叫虚拟变量

  • 目的:主要用于处理多分类变量,把不能量化的多分类变量量化每个哑变量对模型的影响都细化,提高模型精准率

  • 具体操作

    • 假如“职业因素”列,共有5个分类变量:学生、农民、工人、公务员、其他。转化为4列0、1变量,从而提高模型精度。

      • img

        哪些情况下要设置哑变量?

        1. 无序多分类变量

          • 例如,“血型”分为A、B、O、AB四个类型,如果直接赋值为1、2、3、4,它在数学上是有从小到大的顺序关系的,而且还是等距的。这样和现实情况不符,需要转化为哑变量。

        2. 有序多分类变量

          • 例如,疾病的严重程度,分为轻、中、重度,如果赋值为1、2、3(等距)或者1、2、4(等比),这样虽然可以体现等级关系,但与现实不符。此时可以转化为哑变量。

        3. 连续性变量

          • 年龄很细,年龄增加一岁,对模型的影响很小,没有太大的实际意义。我们可以把连续变量离散化,以10岁作为一个年龄段划分,0~10、11~20、21~30等等,用1、2、3、4表示。此时可以转化为哑变量,使得分类变量对模型的影响足够充分

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值