zoukankan      html  css  js  c++  java
  • 机器学习实战基础(十二):sklearn中的数据预处理和特征工程(五) 数据预处理 Preprocessing & Impute 之 处理分类特征:处理连续性特征 二值化与分段

    处理连续性特征 二值化与分段

    sklearn.preprocessing.Binarizer
    根据阈值将数据二值化(将特征值设置为0或1),用于处理连续型变量。大于阈值的值映射为1,而小于或等于阈值的值映射为0。默认阈值为0时,特征中所有的正值都映射到1。
    二值化是对文本计数数据的常见操作,分析人员可以决定仅考虑某种现象的存在与否。它还可以用作考虑布尔随机变量的估计器的预处理步骤(例如,使用贝叶斯设置中的伯努利分布建模)。

    #将年龄二值化
    data_2 = data.copy()
     
    from sklearn.preprocessing import Binarizer
    X = data_2.iloc[:,0].values.reshape(-1,1)               #类为特征专用,所以不能使用一维数组
    transformer = Binarizer(threshold=30).fit_transform(X)
     
    transformer

    preprocessing.KBinsDiscretizer
    这是将连续型变量划分为分类变量的类,能够将连续型变量排序后按顺序分箱后编码。总共包含三个重要参数:

    from sklearn.preprocessing import KBinsDiscretizer
     
    X = data.iloc[:,0].values.reshape(-1,1) 
    est = KBinsDiscretizer(n_bins=3, encode='ordinal', strategy='uniform')
    est.fit_transform(X)
     
    #查看转换后分的箱:变成了一列中的三箱
    set(est.fit_transform(X).ravel())
     
    est = KBinsDiscretizer(n_bins=3, encode='onehot', strategy='uniform')
    #查看转换后分的箱:变成了哑变量
    est.fit_transform(X).toarray()



  • 相关阅读:
    窗口设置背景图片
    双链表
    单链表
    Hough直线检测
    轮廓跟踪
    轮廓提取
    基于腐蚀的二值图像距离变换
    创建对话框用于交互
    hello world
    c#---params参数
  • 原文地址:https://www.cnblogs.com/qiu-hua/p/12981363.html
Copyright © 2011-2022 走看看